在Internet Explorer中使用多个选择器的jquery
我遇到了一个奇怪的情况。 我最近更深入地研究了jquery,并更新了一些旧代码 我没有将onClick放在html标记中,而是将它改为在Internet Explorer中使用多个选择器的jquery,jquery,internet-explorer,jquery-selectors,Jquery,Internet Explorer,Jquery Selectors,我遇到了一个奇怪的情况。 我最近更深入地研究了jquery,并更新了一些旧代码 我没有将onClick放在html标记中,而是将它改为 $(document).ready( function () { $('#top_menu, :button, .big').on('click', function () { window.open($(this).data('link'), '_self', '');
$(document).ready(
function () {
$('#top_menu, :button, .big').on('click',
function () {
window.open($(this).data('link'), '_self', '');
}
);
}
);
IE在鼠标点击时没有重定向。如果转到地址http://mylocaladdress/mysubdir/undefined
在经历了很多挫折之后,我改变了主意
$('top#u menu,:button,.big')
到$('top#u menu:button,.big')
,效果非常好
谁能解释一下吗?:S
完全是新手的错误。
在代码更改期间,由于某种原因,我从菜单表中丢失了id
<table cellpadding="0" cellspacing = "0" id="#top_menu">
<tr>
<td><button class="big" style="font-weight: bold;" nowrap data-link="[action]">[name]</button></td>
...
</tr>
</table>
[姓名]
...
抱歉给你添麻烦了
实际上,有趣的是,它在Chrome中运行得很好,我认为这就是
$(this.data('link')
的问题所在,所以请尝试使用$(this.attr('data-link')
)而不是$(this.data('link')
按钮是否位于
#top_菜单
元素中?问题可能是由事件引起的propagation@ArunPJohny可能是这样的,但是第一个怎么会不起作用,而第二个怎么会起作用呢?对于#top_菜单
,$(此)。数据('link')
将返回未定义,我presume@RajaprabhuAravindasamy因为在实际看到HTML之前,#top_菜单
可能没有数据属性链接
的完整猜测功能。你能发布一些相关的HTML吗?
$(document).ready(
function () {
$('#top_menu, :button, .big').on('click',
function () {
window.open($(this).attr('data-link'), '_self', '');
}
);
}
);