JQuery - 单击任意位置时单击触发应:单击链接时
JQuery - .click triggering when clicked anywhere should: upon clicking on a link
https://dl.dropboxusercontent.com/u/63617776/Capture.PNG
因此,与图像一样,当您单击地图时,div 会更改。现在,当我单击div中的链接时,我希望谷歌地图div更改为另一张地图。
但是,我编写的代码要么根本不触发,要么在我单击页面上的任意位置时触发。
$('#nowydwor').ready(function(){
$(this).click(function(){
alert('foo');
});
});
当然,链接如下所示: {a id="nowydwor"} text {/a} (由于某种原因我无法输入
当用户出于某种原因单击页面上的任意位置时,会触发此值。此外,这只是目前的测试代码,它旨在显示警报。:)有什么想法吗?
编辑:该链接包含在 switch(( 语句中的 .html(( 中。
case '#mazowieckie':
$('#info').html("CONTENT </h5><hr><strong><a id='nowydwor'>Skład Nowy Dwór Mazowiecki</a></strong> CONTENT");
破;
只有在 DOM 准备就绪后立即调用document
/window
上调用ready
才有意义。
尝试直接在 DOM 元素上绑定 click
处理程序:
$('#nowydwor').on('click', function(){
alert('foo');
});
我认为您要做的是在内容更改后分配#info
单击处理程序。遗憾的是,.ready()
只是文档就绪事件的事件处理程序。它只触发一次。此外,更改'#info'
的 html 不会触发任何事件(恕我直言(。
您可以解决此问题,在父元素上使用 .on
-方法。考虑以下 html 结构:
<div id="info">
<!-- This content is dynamically loaded -->
<a id="nowydwor">Click this to change map</a>
<!-- End of dynamic content -->
</div>
这样就可以调用:
$('#info').on('click', '#nowydwor', function(){ /* Change map here... */ })
这会将事件处理程序分配给 #info
,仅当单击的元素与 '#nowydwor'
匹配时才调用该处理程序。由于'#info'
永远不会删除,只有内容会更改,因此您不必再次应用它。
唯一的一点是,您必须确定地图/地点的 id 是什么,因为所有链接的事件处理程序都是相同的。
相关文章:
- 将纯文本URL转换为可单击链接
- 阻止在单击链接后转到页面顶部
- 单击链接时停止运行javascript
- 单击链接时如何将引导程序转盘旋转到特定位置
- 通过单击链接(兄弟姐妹?)从无线电输入中获取id
- Jquery UI日期选择器没有'单击链接时不会再次显示
- javascript警报框中的可单击链接
- 停止触摸滚动还可以防止单击链接
- 单击链接时设置cookie
- 如何区分用户单击链接和在 UIWebView 中执行自动重定向的页面
- 使用 jQuery 单击链接时更改链接背景颜色
- 单击链接时添加另一个选项
- 禁用触摸设备上的单击链接未按预期工作
- 如何在单击链接后将局部变量发送到部分呈现
- 单击链接时折叠响应式导航
- 单击链接时取消“点击”JS
- 单击链接后显示加载程序
- 更改类后单击链接将不起作用
- 在PHP代码中单击链接javascript函数调用
- 如何在单击链接时为不同的输入字段提供不同的值