我在我的phonegap构建应用的start.html中有这个代码。
document.addEventListener('deviceready', function() {
try {
function appBrowser(url) {
var ref = window.open(url, '_blank', 'location=yes');
ref.addEventListener('loadstart', function() { alert('start: ' + event.url); });
ref.addEventListener('loadstop', function() { alert('stop: ' + event.url); });
ref.addEventListener('exit', function() { alert(event.type); });
}
} catch (e) {
alert(e);
}
}, false);
如果我只是静态地将这个html放在下面,一切正常。
<a href="" onClick="javascript:appBrowse('http://www.link.se')">Link</a>
然后我尝试将链接动态添加到sama页面上的div(带有类链接),使用此命令从js / index.js调用。
$('.link').append("<a href='' onClick='appBrowser("+ encodeURI(link) + ")'>Test</a>");
链接被添加,但是当我点击链接时出现以下错误: 未捕获的SyntaxError:意外的标记:start.html:1
有什么想法吗?我正在使用jquery mobile作为我的前端。
答案 0 :(得分:0)
为什么不按类别绑定这些特定链接上的点击事件而不是使用onclick?
$('body').on('click', '.appBrowser', function(e) {
e.preventDefault();
var url = $(this).attr('href');
window.open(url, '_blank', 'location=yes');
});
使用inAppBrowser为类appBrowser
提供将打开的链接,并使用inAppBrowser打开它们。
答案 1 :(得分:0)
像这样添加语法:
$('.link').append("<a href=\"\" onClick=\"appBrowser(encodeURI(link))\">Test<\/a>");