我正在使用jQuery Mobile& Phonegap,并使用以下代码使用ChildBrowser打开某个div中的所有外部链接:
$('.someDIV a').live('click', function() {
var thisUrl = $(this).attr('href');
PhoneGap.exec("ChildBrowserCommand.showWebPage", thisUrl);
return false;
});
由于某种原因,当页面加载到子浏览器中时,它也会在后台加载,就像没有“返回false”一样。
我找到了一个解决方法,给链接的href属性赋值为“#”,并使用url的标题,如下所示:并相应地更新jQuery代码,但这是我的链接动态生成的问题,我不能在title属性中有url。
任何想法如何解决这个问题?
答案 0 :(得分:1)
看起来你需要阻止它传播:
<德尔> .live 德尔>
.bind('click', function(e) {
e.stopImmediatePropagation();
...
})
http://api.jquery.com/event.stopImmediatePropagation/
[编辑]
以上没有工作机会。我复制了第一行...抱歉
您必须使用.bind才能覆盖默认的链接操作。
我一般不使用.live()
,如果有办法对bind执行相同操作,我建议不要使用它。 .live()
有点神奇,有时会产生后果。