以下jquery在大多数桌面浏览器中都能正常工作,但在android和iphone浏览器上失败:
$('#submit_event').live('click', function() {
if ($("#event_name").attr("value") != "" && $("#event_details").attr("value") != ""){
sendEvent($("#event_name").attr("value"), $("#event_details").attr("value"));
$('#response_container').append("<div class='event_title'>"+$("#event_name").attr("value")+"</div><div class='event_details'>"+$("#event_details").attr("value")+"<div class='comment'>Comment</div><textarea class='comment_area'></textarea><div id='post_comment'>Post</div></div>");
}
});
#submit_event只是div的ID。单击时,它在桌面浏览器上运行该功能,但不运行android或iphone。
的问候,
泰勒
答案 0 :(得分:0)
您可以尝试更高效的代码:
$('#submit_event').live('click', function() {
var eName = $("#event_name").attr('value');
var eDetails = $("#event_details").attr('value');
if (eName && eDetails) {
sendEvent(eName, eDetails);
$('#response_container').append("<div class='event_title'>" +
eName +
"</div><div class='event_details'>" +
eDetails +
"..."
);
}
});
答案 1 :(得分:0)
好的,我找到了答案,
这只是移动游猎中的一个错误。
您需要做的就是将onclick =''添加到您将实时函数绑定到的任何元素上,它将起作用。
答案 2 :(得分:0)
是.live事件不适用于像td这样的元素。它将使用html元素,如锚标签,按钮等。因此,如果您想使用jQuery的.live事件应用click事件,您需要首先在您的td元素上使用jquery .attr方法添加onclick =“”属性,然后应用。 live事件用于将事件与td元素绑定。有关更多详细信息,请访问以下博客
http://skillfulness.blogspot.com/2010/11/workaround-for-jquery-live-event.html
答案 3 :(得分:0)
如果你也使用jquery mobile,你可能想尝试
$('#submit_event').live('tap', function() {}