使用jQuery for iPhone webapp,'on'不适用于动态创建的元素

时间:2012-10-10 14:00:33

标签: jquery iphone events dynamic element

以下代码添加< div3> < div1>时的html点击。点击< div3>然后在除了iPhone之外测试的每个webbrowser上显示警报。适用于Android,适用于Safari / OSX:

<!doctype html>
<html>
<head>
<script type="text/javascript" src="js/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
$(function () {
    $('#div1').on('click', function(e) { 
        $('#div2').html('<div id="div3">Now Click Me!</div>'); 
    });
    $('#div2').on('click', '#div3', function(e) { alert('OLA!'); }); 
});
</script>
</head>
<body>
<div id='div1' style='border:black 1px solid; background:yellow'>CLICK ME</div>
<div id='div2'  style='border:black 1px solid; background:yellow; font-size:48px'/>
</body>
</html>

我希望找出为什么Safari / iPhone在这里表现不同,以及是否有办法解决这种问题。

1 个答案:

答案 0 :(得分:0)

好的,我发现了这个问题。单击不在div3中注册,因为div3是透明的。为div3添加背景颜色:

$('#div2').html('<div id="div3" style="background:pink;">Now Click Me!</div>'); 

感谢您的帮助。