2013-06-03 24 views
1

工作,我有一個Java腳本女巫是能正常工作在Firefox和IE瀏覽器,但它並沒有在Chrome中工作! 我想就當我按一下按鈕它讓我看到table.If我使用Chrome,並點擊它加載表,但我不能看到整個表,因爲它的滾動無法正常工作。 這是我的腳本:我的javascript不鉻

function toggle_it(itemID) { 
    if ((document.getElementById(itemID).style.display == 'none')) 
    { 
     document.getElementById(itemID).style.display = 'inline'; 
    } else { 
     document.getElementById(itemID).style.display = 'none'; 
    } 
} 

<tr class="query-box"> 
    <td width="30%">&nbsp;</td> 
    <td><p align=right><a href="#" onClick="toggle_it('mytable id')"><img border="0" 
                      src="mypicbutton.gif">&nbsp;More...</a>&nbsp;</p></td> 
</tr> 
+2

初始值的你真的有在ID''MYTABLE id''的空間?這也可能是問題。 – jfriend00

回答

3

你設置表格的displayinline,但是這不是對錶正常display;正常的是table。但是,要使您的toggle_it適用於任何類型的元素,請將其設置爲'',這會使您的行爲看起來好像您根本沒有設置display,對於任何類型的元素都會回到默認的display

function toggleIt(id) { 
    var element = document.getElementById(id); 
    if(element.style.display === 'none') { 
     element.style.display = ''; 
    }else{ 
     element.style.display = 'none'; 
    } 
} 

正如你所看到的,我也以其他方式清理了代碼。

+0

+1謝謝你比我 – PSR

+0

謝謝你更好的答案,但它並沒有在Chrome –

+0

@ S.Faraji正常工作:工作對我蠻好。 [試試看。](http://jsfiddle.net/9846s/) – icktoofay

0

我懷疑問題是由Chrome瀏覽器style.display返回的值。請嘗試以下操作:

function toggleIt (id) { 
    var el = document.getElementById (id); 
    el.style.display = el.style.display == 'none' ? '' : 'none'; 
} 

通過測試平等none此代碼應無論工作style.display