현재 QtWebKit을 사용하여 응용 프로그램을 제작하고 있습니다. 일부는 웹 사이트의 제품 카탈로그 페이지를 표시합니다. 이 웹 페이지에서는 사용자가 페이지를 다시로드 할 필요없이 정렬 및 필터링 옵션을 추적하기 위해 jQuery.history 플러그인을 사용하고 있습니다.QtWebKit : HTML5 기록 API를 통해 변경된 URL을 검색하는 방법은 무엇입니까?
jQuery.history의 pushState()
기능은 발사되지 않는다 (우리는 뒤로/앞으로 버튼과 주소 표시 줄을 업데이트하는 듣고있는)을 제대로 역사에 밀려 제공하는 URL 만 QWebView
의 urlChanged()
신호를 호출하면 현재 URL이 변경 되었더라도 나는 링크가 클릭되지 않았거나 페이지를 새로 고침해서 Qt가 URL과 관련된 작업을 수행 할 필요가 없다고 생각하기 때문에 이것을 가정 할 수 있습니다.
QtWebKit에서 HTML5 기록 API를 통해 이루어진 URL 변경을 감지하는 방법이 있습니까? 아니면 확실하지 않은 것이 있습니까?
AFAIR을 사용하면 jObject에 QObject를 삽입하고 신호와 슬롯을 사용할 수 있습니다. 여기에서 [docs] (http://qt-project.org/doc/qt-4.8/qwebframe.html#addToJavaScriptWindowObject)를 발견했습니다. 또한 [this] (http://www.developer.nokia.com/Community/Wiki/Exposing_QObjects_to_Qt_Webkit) 및 [this] (http://www.developer.nokia.com/Community/Wiki/Connecting_to_a_QObjects_signal_with_JavaScript_slot_in_Qt_WebKit). – gatto
"브라우저"를 작동시키기 위해 웹 사이트를 변경하지는 않겠지 만, 이는 최후의 수단으로 선택할 수있는 확실한 옵션입니다. – Davecheesefish
자바 스크립트 삽입 기능이 포함되어 있습니까? 원래 웹 사이트는 여전히 동일하지만 "브라우저"는 qobjects에 "userscripts"를 삽입하고 jquery.history에 코드를 연결합니다. – gatto