2011-03-10 134 views
1

我正在寫一個web應用程序android瀏覽器java腳本問題

代碼是這樣的。我正試圖在頁面加載開始時顯示進度條。在IE和Firefox中運行良好,但在Android瀏覽器甚至沒有加載!是否存在這個問題?如何調試?

<html> 
<head> 
    <title>Mainpage</title> 
<script type="text/javascript"> 
    function modalWin() { 
//alert("coming"); 
    if (window.showModalDialog) { 
    window.showModalDialog("pb.html","name","dialogWidth:255px;dialogHeight:250px"); 
    } else { 
    window.open('xpopupex.htm','name','height=100,width=100,toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,modal=yes'); 
    } 
    } 
    </script> 
</head> 


<body onLoad=modalWin()> 
    <frameset rows="5%, *" border="10"> 
     <frame src="header.html"> 

<frame src="footer.html"> 
     </frameset> 

    </frameset> 

    <noframes> 
    You are using an old browser. 
</noframes> 

</body> 
</html> 
+4

框架集是相當過時的,我不知道它是不是像框架集。 – Brian 2011-03-10 11:43:49

+4

彈出窗口讓寶寶耶穌哭了。 – redent84 2011-03-10 11:45:12

+0

你是否啓用了JavaScript。看到這個http://developer.android.com/reference/android/webkit/WebSettings.html#setJavaScriptEnabled%28boolean%29 – Mudassir 2011-03-10 11:58:26

回答

0

首先,你的HTML是錯誤的。 Frameset取代了body,你沒有frameset和body在一起。框架和身體有different DOCTYPEs。除非您刪除body元素,否則您的代碼甚至不會在Google Chrome中加載框架集。

至於框架移動支持一般。我不明白爲什麼不這樣做,但我不會親自選擇它們,因爲我認爲它們在小屏幕上使用會更困難。 (They're not in HTML5反正)

如何調試?嗯,在調試之前你可以試試validating。那麼如果你仍然有一個有效的代碼問題,就這樣的問題來說,這將是一個迭代減少代碼的情況,直到你縮小到罪魁禍首。

0

的問題是涉及到:

if (window.showModalDialog) { 
    window.showModalDialog("pb.html","name","dialogWidth:255px;dialogHeight:250px"); 
    } else { 
    window.open('xpopupex.htm','name','height=100,width=100,toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,modal=yes'); 
    } 

在Android瀏覽器的代碼window.showModalDialog啓動true但瀏覽器無法呈現此方法。

此方法僅由IE支持。最近Firefox 28棄用showModalDialog,Chrome 35將其刪除。你可以改變你的代碼,而不是檢查用戶代理:

if (navigator.userAgent.indexOf("MSIE")>-1) { 
    window.showModalDialog("pb.html","name","dialogWidth:255px;dialogHeight:250px"); 
    } else { 
    window.open('xpopupex.htm','name','height=100,width=100,toolbar=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,modal=yes'); 
    }