Jquery 正在尝试(但失败)在iphone上的mobile safari中添加并触发图像对象的onlick事件
我试图动态地将一些对象附加到一个div中,然后在创建完所有对象后,通过编程触发第一个图像的单击事件。以下代码在PC上的Firefox中成功运行,但当我在iPhone上测试时,在开发者窗口中出现以下错误- TypeError:表达式'document.getElementById(“image0”)的结果。单击[undefined]不是函数 这是我的密码-Jquery 正在尝试(但失败)在iphone上的mobile safari中添加并触发图像对象的onlick事件,jquery,onclick,mobile-safari,Jquery,Onclick,Mobile Safari,我试图动态地将一些对象附加到一个div中,然后在创建完所有对象后,通过编程触发第一个图像的单击事件。以下代码在PC上的Firefox中成功运行,但当我在iPhone上测试时,在开发者窗口中出现以下错误- TypeError:表达式'document.getElementById(“image0”)的结果。单击[undefined]不是函数 这是我的密码- function processData(data) { $.each(data, function(i) {
function processData(data) {
$.each(data, function(i) {
$('<div>').append($('<img>').attr('src', '').attr('id','image'+i)).data('large', this[0]).appendTo('#gallery');
});
$('#gallery div').touchGallery({
getSource: function() {
var f = $(this).data('large');
return f;
}
});
document.getElementById("image0").addEventListener('click', function(){},false);
document.getElementById("image0").click();
}
函数processData(data){
$.each(数据、函数(i){
$('')。追加($('')
就像我说的,这在Firefox上很好。我猜可能有不同的方式触发触摸设备上的点击事件?或者这个事件可能吗?我使用TouchGallery来显示图像的幻灯片,而不是显示图像的幻灯片,并要求用户点击来启动幻灯片,我想自动启动开始吧
有线索吗?为什么不使用jQuery进行点击事件绑定
我认为错误在于javascript不知道您正在使用的.click()(尽管firefox显然支持这个)
$(“#image0”)。单击(function(){});
应该可以做到这一点
(或者,由于您在加载DOM后在gallery div中添加图像:使用$(“#gallery”).delegate(“img”,“click”,function(event){});
)它说click()
不是函数。它不是关于侦听器,而是关于模拟单击。感谢这让我走上了正确的方向-是的,我使用错了。click()最后,我仍然需要向image0元素-document.getElementById(“image0”).addEventListener('click',function(){},false);但是当我使用$(“#image0”).click()时,它正确地调用了这个click事件并加载了幻灯片。干杯!