我有一个由
组成的关闭按钮 SELECT
TJS.intJobStatusID
,TJS.strStatus
,TJ.intJobID
,TC.strLastName + ', ' TC.strFirstName AS strCustomerName
,TC.intCustomerID
,TJ.dtmStartDate
,TJM.intMaterialQuantityID
,TM.intMaterialID
,TM.monCost
FROM
TJobStatuses AS TJS
JOIN
TJobs AS TJ
ON
//TJS.someid = TJ.someid
JOIN
TCustomers AS TC
ON
TJ.intCustomerID = TC.intCustomerID
JOIN
TMaterials AS TM
ON
//someId = TM.someId
JOIN
TJobMaterials AS TJM
ON
TM.intMaterialID = TJM.intMaterialID,
ORDER BY
TJ.intJobID
,TM.intMaterialID
这个的CSS就是......所以它一开始就隐藏了。
<p><span class="glyphicon glyphicon-remove" aria-label="Close"></span></p>
<div id="tag1" class="tag">
<p class="p1">Dog Info</p>
<video id="VideoA1" class="VideoA"><source src=""></video>
<p><span class="glyphicon glyphicon-remove" aria-label="Close"></span></p>
</div>
如你所见,它是隐藏的。然后在jquery中我基本上使得包含此按钮的div在单击时展开。这很好用。当点击div时,我也得到clode按钮“span”到show()。这也很好。但是,单击时我无法获得相同的关闭按钮消失。
p .glyphicon-remove{
color: white;
font-size: 20px;
position: absolute;
top: 5px;
right: 7%;
display: none;
}
p .glyphicon-remove:hover{
color: yellow;
cursor: pointer;
font-size: 25px;
}
===========================
可能的解决方案:
似乎我可以通过选择它的类选择CLOSE按钮然后告诉jquery隐藏它的父级(跨度?)
$(".row1 .tag").click(function(){
$(this).siblings().hide();
$(this).animate({
width:"90%",
});
$(".VideoA", this).css('display', 'none');
$("p .glyphicon-remove", this).show();
});
$("p .glyphicon-remove").click(function(){
$(this).hide();
});
答案 0 :(得分:2)
您应该使用 e.stopPropagation() 来阻止事件冒泡DOM树,防止任何父处理程序被通知事件,在您的情况下单击{{1}单击.tag
按钮时会激活div,因此需要使用stopPropagation来阻止:
close
希望这有帮助。