0

我正在尝试安排我的 html/css/jquery,以便我可以通过双击来切换 div 的可见性。我可以通过双击将其隐藏,但是当我再次双击时它不会重新出现。当我查看所有 div 轮廓时,该 div 的轮廓不再存在。我使用 Web 开发人员插件进行检查。我正在使用以下代码来尝试完成此操作:

我的css课程是..

  .hidden { visibility: hidden; }
    .unhidden { visibility: visible; }

html是...

<div id="ConstructionDiv" ondblclick="unhide('ConstructionDiv')" class="unhidden">
                    <!.. the div is unhidden at page load. When I look at generated
                    source code after the double click the class is "hidden" 
                     -->
            </div>

我的JavaScript是...

function unhide(divID) {
 var item = document.getElementById(divID);
 if (item) {
 item.className=(item.className=='hidden')?'unhidden':'hidden';
 }
 }

有可能做我正在尝试的事情吗?一定有什么有效的。谢谢你。

4

3 回答 3

0

我刚试过这个,不可见的元素无法接收点击事件。

正如安迪所说,Opacity 0 可以很好地接收点击事件,并且内容仍然是不可见的。

于 2012-10-19T13:41:38.850 回答
0

使用以下 CSS 规则:

    .hidden {
        -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=1)";
        filter: alpha(opacity=1);
        -moz-opacity:.1;
        -khtml-opacity: .1;
        opacity: .1;
    }

.unhidden {
        -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
        filter: alpha(opacity=100);
        -moz-opacity:1;
        -khtml-opacity: 1;
        opacity: 1;
    }

更新

您还可以将元素包装在 div 之类的其他元素中,然后使用该 div 的单击来显示或隐藏内部内容。

于 2012-10-19T13:45:14.700 回答
0

如果你有两个 div,都绝对放置,但一个可能比另一个大得多。单击一个会更改两者的可见性。

于 2016-04-04T00:20:47.470 回答