我在谷歌地图上的infowindow链接上使用e.preventdefault()。
它在桌面上按预期工作,其中链接不访问href,但在safari上它似乎忽略它并访问链接,好像没有加载javascript。
它显然正在加载javascript,因为谷歌地图以及许多标记和信息窗口正在加载正常。
链接的代码是这样的:
$('.infowindow .more, .infowindow h3 a').live('click', function(e) {
e.preventDefault();
/* Loading content from external html file */
$('#content .content').html('<p class="loading"><img src="images/icons/loader.gif" alt="Loading content..."></p>');
$('#content .content').load($(this).attr('href') + ' #content > *', function() {
显然,代码从这里开始与其他位和bobs。
有没有其他人有任何问题或知道解决方案?
谢谢
戴夫。
而不是使用
e.preventDefault();
附加在该函数的末尾
return false;
然后点击<a>
元素将不会重定向到任何地方。
这里派对有点晚了,但我在2019年遇到了同样的问题。我能够通过在html元素本身中放置preventDefault来解决这个问题:
<a href="http://dontvisitthis.com" onclick="event.preventDefault()">click</a>
jquery事件处理程序仍会在单击时触发。