有沒有辦法使用cordovas InAppBrowser引用網頁上的元素,並按下按鈕時,檢測?我所引用的頁面有一個後退按鈕和一個關閉按鈕,我需要知道哪一個被按下,然後關閉inAppBrowser。科爾多瓦inappbrowser引用元素
我假設它會是這個樣子,但我似乎無法使它工作
var ref = window.open(url, '_blank');
ref.addEventListener('loadstop', function(event) {
ref.executeScript({
code:
"document.getElementById('pageHeader').onclick = function() {
alert('button was clicked');
}"
});
}
是否可以改用:
executeScript({ link: "https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js" });
然後使用jQuery?
executeScript({ code: "$('#pageHeader').on('click', function() { alert('button was clicked'); }"});
雖然'InAppBrowser'插件可以讓你運行得離譜在顯示的頁面上,就像在你的問題中一樣,如果頁面不是你的,那麼這將不起作用。不屬於你的應用程序),因爲你會得到一個權限錯誤。這很諷刺,因爲InAppBrowser插件最常見的用途是顯示不屬於App本身的頁面,所以'executeScript'方法幾乎沒有用處。 –
@RacilHilan Ahh,你知道當我點擊一個後退按鈕時是否有一種方法可以參考嗎? executeScript之外? – DanceSC
不,對不起,否則我會將它發佈在答案中:-)。我認爲沒有辦法做到這一點。 'executeScript'有一個X按鈕來關閉它,如果你不喜歡它,你可以修改它的外觀。對於iOS來說,這是標準風格,我不認爲你可以改變它,但它看起來不錯。 –