我从这本书(新手到忍者)略微改编了这段代码。
用户点击“联系人”,下方会打开一个表单,其中包含电话号码和href链接。左键点击链接什么也没做,但我可以右键单击并“在新标签页中打开”,然后它就能正常工作。
js和jQuery相当新,但我认为问题(我可能错了)是,无法正常工作的href链接与打开表单的“联系人”链接相同的“a”链接,但我不知道如何改变它。
<div id="contact">
<a href="#">Contact</a>
<form action="">
Phone me on:018<br><br>Email me at <a href="http://www.guardian.co.uk/lifeandstyle/2012/apr/04/samantha-brick-hated-good-looks?newsfeed=true">click me</a>
</form>
</div>
Jquery的
$('#contact form').hide();
$('#contact a').toggle(function() {
$(this)
.addClass('active')
.next('form')
.animate({'height':'show'}, {
duration:'slow',
easing: 'swing'
});
}, function() {
$(this)
.removeClass('active')
.next('form')
.slideUp();
});
非常感谢
答案 0 :(得分:3)
而不是
$('#contact a')
尝试使用
$('#contact > a')
通过这种方式,您只定位直接子项而不是其他<a>
。我认为当您点击带有href <a href="http://www.guardian.co.uk/lifeandstyle/2012/apr/04/samantha-brick-hated-good-looks?newsfeed=true">click me</a>
的链接时,您的代码段也会运行,并且脚本中断并且因此没有遵循链接