当我在第1页的子浏览器中打开一个页面时,我想在关闭它时运行一个函数,它可以工作。 但是,当我转到page2并在子浏览器中打开另一个页面时,它也在这里运行该函数,我不想这样做。
那么当我在第1页而不是第2页关闭子浏览器时如何运行函数?
我在第1页上使用此功能在我关闭CB时运行该功能。
var apptypen='iPhone';
$(document).ready(function(){
if (apptypen=='iPhone'){
alert("apptype iphone");
window.plugins.childBrowser.onClose=function(){
jQT.goBack(1);
window.plugins.childBrowser.onClose = null;
}
}
});
当我在第1页打开CB时,它会运行警报并返回jQT.goBack(1);函数,但是如果我在第2页打开CB它会运行警报,但它会运行jQT.goBack,这就是我不想要的。它应该只在第1页打开CB时运行jQT.goBack而不是在第2页的CB中打开页面时运行。 任何意见,谢谢。 解决了,我必须有window.plugins.childBrowser.onClose = null;在jQT.goBack之后。
答案 0 :(得分:0)
您需要注册位置更改侦听器。然后,当您转到第2页时,您可以设置全局变量或删除关闭侦听器。你的选择。
window.plugins.childBrowser.onLocationChange = function(loc) {
if (loc == "page1.html") {
window.plugins.childBrowser.onClose = function() {
alert("close");
};
} else if (loc == "page2.html") {
window.plugins.childBrowser.onClose = null;
}
};