[英]jquery , how do i select attr href target hide
$('a.minimize').click(function() {
$($(this).attr('href')).hide();
});
<div class="drag" id="2">
<a href="#content" class="minimize" style="display: none;">2</a></p>
<div id="content">1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br /></div>
</div>
我想通过设置a href =“”隐藏#content,为什么不起作用???
有什么错吗
至少对我来说,您的需求真的不清楚。 您得到的答案是正确的,因为如果您希望href
属性为空,则不要使用hide。 但是,这是我感到困惑的地方:
您已经为该<a>
设置了display:none
,所以这根本不会出现。 那么,用户如何单击他们无法与之交互的内容?
您想在<a>
被点击后“隐藏”。 如果我不得不猜测您要么想要:
一种。 用户单击链接后,使链接(显示2)消失。 您希望用户仅单击一次链接,然后,该链接将变为无效链接,因为它没有指向任何内容。
因此,假设我对您的用途有最模糊的了解,要使链接在点击后消失,请遵循已经给出的建议
$('a.minimize').click(function() {
$(this).attr('href', '');
});
如果您希望链接在点击时消失,请执行以下操作:
$('a.minimize').click(function() {
$(this).hide();
});
还是我完全忘记了要点?
hide()不是在属性上使用的正确函数。 它用于设置DOM元素的可见性。
尝试以下方法:
$(this).attr('href', '');
.hide()是不同的。 你应该像这样。
$(this).attr('attr','value here')
$($(本).attr( 'HREF', ''));
将锚定标记事件处理程序包含在文档准备功能中。
$(function(){
$('a.minimize').click(function() {
$($(this).attr('href')).hide();
});
});
好..从哪里开始..首先,如果您不显示clickable元素,那将是行不通的。 因此您必须像这样删除style =“ display:none”:
<div class="drag" id="2">
<a href="#content" class="minimize" >2</a></p>
<div id="content">1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br /></div>
</div>
第二。 如果您不添加脚本标签,则javascript将永远无法工作。 最后也是最重要的一点是,您不能在浏览器加载之前尝试获取元素a.minimize。 因此,您可以暂存或者在输出元素的html之后执行脚本,或者使用元素jQuery(document)的ready事件安全地执行脚本。 所以这是工作代码:
<script>
jQuery(document).ready(function(){
$('a.minimize').click(function() {
$($(this).attr('href')).hide();
});
});
</script>
<div class="drag" id="2">
<a href="#content" class="minimize" >2</a></p>
<div id="content">1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br />1<br /></div>
</div>
如果我对您的理解正确,那么当您点击类别为“最小化”的链接时,您想隐藏ID为“内容”的div。
这是正确的方法:
$("a.minimize").click(function() {
$("#content").hide();
});
或者,如果您想在单击链接时使用ID为“内容”的div切换状态,请尝试以下操作:
$("a.minimize").click(function() {
$("#content").toggle();
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.