2017-07-27 330 views

回答

0

瀏覽器與服務器端語言無關,所以沒有java/jsp的問題。瀏覽器以html的形式呈現由服務器提供的前端內容。

查看您網頁的源代碼後,我發現問題。

在HTML代碼中你保持你的部門hidden-

<div style="visibility:hidden" id="divLogin"> 

,一旦加載頁面,你可以通過調用handleOnLoad啓用它()函數

<body bgColor=#ffffff 
     background="/aeroPDM/common/images/utilSpacer.gif" 
     onload="handleOnLoad()"> 

現在,這個功能handleOnLoad ()是可見的設置內容。

如果你看到handleOnLoad(),則設置此內容可見於IE和萬盎司和Netscape我想但不支持其他瀏覽器

function handleOnLoad() { 

//display the login form (only happens if JavaScript is enabled) 
if (isNS4) { 
     setTimeout("void(0)",10); 
     document.layers['layerLogin'].visibility = "show"; 
    } else if (isIE) { 
     document.all['divLogin'].style.visibility = "visible"; 
    } else if (isMoz) { 
     document.getElementById('divLogin').style.visibility = "visible"; 
} 

所以使它在其他瀏覽器中可見,你可以簡單地爲所有鉻添加1行。

else 
document.getElementById('divLogin').style.visibility = "visible"; 

因此,在短期,你只需要更換您的handleOnLoad() JavaScript函數 本 -

function handleOnLoad() { 

//display the login form (only happens if JavaScript is enabled) 
if (isNS4) { 
     setTimeout("void(0)",10); 
     document.layers['layerLogin'].visibility = "show"; 
    } else if (isIE) { 
     document.all['divLogin'].style.visibility = "visible"; 
    } else if (isMoz) { 
     document.getElementById('divLogin').style.visibility = "visible"; 
    else 
    document.getElementById('divLogin').style.visibility = "visible"; 
    } 

最後否則將執行每一個瀏覽器等感謝NS,IE和Mozilla的,所以如果你希望它只適用於Chrome,那麼請在else附加一些條件並將其設置爲else if

希望這能解決您的問題。

+0

感謝兄弟。你的解釋是正確的,但可以延伸到另一個問題:爲什麼默認情況下將div的可見性設置爲「隱藏」?爲什麼不直接顯示div? – Yaeljiao

+0

可能是becoz登錄頁面旨在提交應該使用JavaScript的表單。所以開發人員首先檢測JavaScript是否啓用。如果沒有,然後隱藏內容'粗魯'? – Yaeljiao

+0

是的,可能是開發商不希望在沒有完全加載頁面時顯示分區,如果您發現我的答案正確,請將其標記爲答案。謝謝 –

相關問題