我正在尝试更改剧透,但我的javascript代码存在问题
这是扰流板: http://nathan3000.altervista.org/Jdownloader%20Spoiler/zzzz.html
当我点击图像“MAC”时,扰流板打开。当我再次点击MAC时,扰流板关闭。但当我在文本之间点击时,扰流板再次关闭。 当我点击文本中间 时,我不希望扰流板关闭,但只有当我点击图像“MAC”时才会关闭。
如何更改选择器,使其仅在单击图像时显示/隐藏?
我仍然在.OS container
我不明白为什么桌面边框没有出现在网上版本上,而在本地版本上我可以看到桌子的边框。
剧透的javascript代码是:
<script type="text/javascript">
$(document).ready(function(){
$(".nonjs").removeAttr( "href"); //href is needed for users without JS
$('.OS').click(function(){
if($(this).find(".details").is(":visible"))
{
$(this).find(".details").not(":hidden").hide("slow");
return true;
}
else
{
$(this).find(".details").show("slow");
return false;
}
});
});
</script>
<style type="text/css">
<!--
.details {
display: none;
clear: both;
padding: 2px;
}
.nonjs{
cursor:pointer;
}
img {
border: 0px;
}
-->
</style>
提前致谢
答案 0 :(得分:0)
将您的剧透/弹出菜单直接放在.OS映像之后。现在你的popdown是.OS容器的子项,因此点击它会传递给.OS点击处理程序。
这是你想要的东西:
答案 1 :(得分:0)
这是有效的:
$(document).ready(function(){
$(".nonjs").removeAttr( "href");
//href is needed for users without JS
$('.OS').click(function(e){
if(!$(e.target).parents('.details').length){
if($(this).find('.details').is(":visible"))
{
$(this).find('.details').not(":hidden").hide("slow");
return true;
}
else
{
$(this).find('.details').show("slow");
return false;
}
}
});
});