0

当用户键入任何地址时,我正在使用 jquery geocomplete 插件来显示地址建议。它动态地附加一个具有“pac-container”类的div。它看起来像这样:

<div class="pac-container">
    <div class="pac-item"><b>SDG</b>, Vaishali, Bihar, India</div>
    <div class="pac-item"><b>SDG</b>M, Kuber Nagar, Ahmedabad, Gujarat, India</div>
    <div class="pac-item"><b>sdg</b>sdf, Isselburg, Germany</div>
    <div class="pac-item">Lorong <b>Sdg</b> Kasim B Hamid Malacca Melaka Malaysia</div>
</div>

现在我的问题是,当我单击任何 pac 项目时,我必须停止事件冒泡。如何将事件处理程序附加到为 IE 动态添加的 pac-item 上。

JS 小提琴:http: //jsfiddle.net/EcPdP/2/

它适用于除 IE 之外的所有浏览器。在 IE 中,点击 pac-item 会将点击事件传播到正文。请帮我解决这个问题。

4

2 回答 2

0

尝试这个:

$("#input-geo").geocomplete().bind("click",function(e){ 
    e.stopPropagation(); 
    e.preventDefault(); 
});

您正在检查哪个版本的 IE?

于 2013-06-05T12:49:41.440 回答
0

我对 IE 也有类似的问题,后来缩小到 IE10。

要解决尝试添加

background-image:url(/none) 

到未显示的 div 元素。出于某种原因,即使插入了不存在的图像,它也可以工作,所以我使用了它。

事实证明,由于使用 progid:DXImageTransform 使动态创建的 div 变得透明,IE 没有捕获该 div 的事件。

我不记得我从哪里得到这个解决方案。如果我喜欢原始链接,我会更新答案。

于 2013-07-17T01:51:32.600 回答