2017-07-06 71 views
0

我使用Javascript和'onclick'在大型數據庫中顯示隱藏的div,當我使用onclick它顯示爲一個彈出窗口。它在同一個html文件中工作正常,但我無法在另一個html文件中獲得一個id openend。我怎樣才能做到這一點?隨着onclick在其他html文件中顯示隱藏的div

我用這個JavaScript代碼(SH =顯示):

var divState = {}; function sh(id) { 
if (document.getElementById) { 
    var divid = document.getElementById(id); 
divState[id] = (divState[id]) ? false : true; 
//close others 
for (var div in divState){ 
    if (divState[div] && div != id){ 
     document.getElementById(div).style.visibility = 'hidden'; 
     divState[div] = false; 
    } 
} 
divid.style.visibility = (divid.style.visibility == 'visible' ? 'hidden' : 'visible'); } } 

而且我所說的項目,此代碼(ID = 1):

<a class=w onclick="sh('1');">asdfasdf asdasdfds</a> 

我試圖<a onclick="window.location.href='../A/index.html?id=0174' ">但它不「open」或者show id = 0174,只會在A目錄中打開index.html。如何在A/index.html中點擊E/index.html中的某個項目時使ID 0174可見?

非常感謝!

+0

您可以創建一個js文件,並以HTML文件中嵌入這個腳本。 – Huelfe

+0

但是這並不顯示其他html文件中的隱藏div。 – Fred

+0

你能描述一下你的工作流程嗎?其他html文件是什麼意思?你的意思是像兩個打開的標籤,如果你改變tab1上的東西,tab2也應該改變一些東西? – Huelfe

回答

0

您可以使用:target CSS僞類來顯示或隱藏指定爲網址中散列值的元素。

例如:<a href="../A/index.html#0174">Link to div #0174 on other page</a>

.show-when-target { 
 
    visibility: hidden; 
 
} 
 

 
.show-when-target:target { 
 
    visibility: visible; 
 
}
<div id="1" class="show-when-target"> 
 
    Hello from div 1! 
 
</div> 
 

 
<div id="2" class="show-when-target"> 
 
    Hello from div 2! 
 
</div> 
 

 
<div id="3" class="show-when-target"> 
 
    Hello from div 3! 
 
</div> 
 

 
<a href="#1">Show Div 1</a> 
 
<a href="#2">Show Div 2</a> 
 
<a href="#3">Show Div 3</a>

+0

我無法使用這個功能,因爲我沒有使用'display:block',因爲它不適用於Web的盲人用戶。我明白利用'visibility:visible'不會影響可讀性。 – Fred

+0

沒有理由不使用'visibility'來代替。更新了片段。 –

+0

謝謝,我試過了,但沒有奏效。也許我應該提到,無形的div是父div的孩子。實際代碼如下所示:'

Etna
Etna Een actieve vulkaan in het noordoosten van Sicilië, bla bla
'我必須重複主題Etna才能在彈出窗口中再次顯示並解釋。第一個埃特納火山是一個有額外信息的長長的物品清單的主題。不,我錯了,它不是小孩,一開始就是如此,但我改變了這一點。 – Fred

相關問題