当用户点击包含<TD>
但遇到问题时,我想模仿锚点击。
这是JS部分:
$('contactTab').click(function() {
$('contactTabLink').trigger("click");
});
这是HTML部分:
<td class="previewTabs" id="contactTab">
<a class="previewTabLink" id="contactTabLink" rel="#contactOverlay">CONTACT</a>
</td>
当有人点击<TD>
contactTab时,它应该在<A>
contactTabLink上触发点击事件,然后启动叠加。我的问题是具有click侦听器的JS函数根本没有触发。
有人可以看到我哪里出错吗?
编辑1:
我已经将选择器更改为#,但它仍然不会触发该功能。
答案 0 :(得分:10)
您的选择器不正确。
应该是这样的:
$('#contactTab').click(function() {
$('#contactTabLink').trigger('click');
});
答案 1 :(得分:1)
您的选择器错了。
ID选择器需要#
。
答案 2 :(得分:1)
我想在此处注意一下,对于html格式化的方式,$('#contactTabLink').trigger("click")
会导致$('#contactTab').click
触发,因为它是#contactTabLink
的父级,从而导致无限循环递归。有些浏览器会向控制台输出错误或者根本没有响应。您可以相应地安排您的html以避免这种情况:
<td class="previewTabs" id="contactTab">
<a href="javascript:;" class="previewTabLink">CONTACT</a>
</td>
<a class="previewTabLink" id="contactTabLink" rel="#contactOverlay"></a>
答案 3 :(得分:0)
你的选择器错了 - 你正在使用id,所以你应该在前面有一个'#'。
$('#contactTab').click(function() {
$('#contactTabLink').trigger("click");
});
答案 4 :(得分:0)
向选择器添加哈希(#)后,确保该函数包含在$(document).ready(function(){yourFunction})中...
$(document).ready(function() {
$('#contactTab').click(function() {
$("#contactTabLink").trigger("click");
});
});