2012-10-19 10 views
0

我想安排我的html/css/jquery,以便我可以切換 div的可見性雙擊它。我可以通過雙擊來隱藏它但是當我再次雙擊時它不會再出現。當我查看所有div輪廓時, 此div的輪廓不再存在。我使用Web開發插件來檢查。 我使用下面的代碼,試圖做到這一點:我想安排我的html/css/jquery,所以我可以通過雙擊切換div的可見性

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'; 
} 
} 

是否有可能做我正在嘗試的?必須有一些工作。 謝謝。

+6

我不是100%確定,但我不認爲你可以點擊隱形元素,嘗試將不透明度設置爲0而不是 – Andy

回答

0

我剛試過這個,看不見的元素不能接收點擊事件。

正如Andy所說,不透明度0可以很好地接收點擊事件,並且內容仍然是不可見的。

+0

嗨,我成功了。 – Joe

+0

你好,我成功了這個html

...
和這個javascript。 (divID){ var item = document.getElementById(divID); if(item)item.style.opacity =(item.style.opacity == 0)?1:0; } } 感謝您的幫助。 – Joe

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; 
    } 

UPDATE

您也可以包裝元素類似div一些其他的元素,然後使用div的點擊來顯示或隱藏的內內容。

+0

這也行不通。您不能與不透明度爲0的元素進行交互。 –

0

如果你有兩個div,兩者絕對放置,但可能比另一個大得多。點擊一個會改變它們的可見性。