2011-06-01 41 views
1

我正在製作一個小部件,並用一個noscript標記封裝了一些JavaScript,現在我只是看到一個空白屏幕,並且沒有我可以注意到的錯誤消息。如何調試noscript標記

這裏是例子:http://www.comehike.com/outdoors/widget.php?hike_id=108&height=600&width=700

如果你從該頁面的查看源代碼的URL粘貼,你會得到的東西發生。但由於某種原因,我鏈接到的這個網址沒有顯示任何內容。爲什麼會發生?

謝謝!

+0

在'

+0

'

+0

從無腳本標記中取出javascript。我相信你的腳本會起作用:) – Ibu 2011-06-01 15:49:25

回答

3

有沒有很多調試。只需嘗試JS上的頁面,並關閉它。像往常一樣,validating是有幫助的。

如果您打開了JavaScript,那麼<noscript>元素將被忽略,您什麼都看不到。這是預料之中的。

如果您已關閉JavaScript,則會呈現,並加載頁面。該頁面包含一個標題,幾個空元素和很多JavaScript(由於JS未打開而不會運行)。

+0

+1正如我在回答中所說的那樣,但你首先到達那裏。 ;) – Mikaveli 2011-06-01 15:51:32

+0

@Quentin啊,所以我應該添加更多的代碼來渲染小部件結束標記後的小部件?或者我應該從noscript標籤中取出iframe代碼?任何想法這是如何工作的? :) – Genadinik 2011-06-01 15:52:19

+0

要使鏈接有效,請用@Shaz在他的回答中說的關閉。 – Mikaveli 2011-06-01 15:54:31

2

您沒有關閉<a>標籤。

前:

<noscript> 
<iframe style="width:700px;height:600px" src="http://www.comehike.com/outdoors/hike_widget.php?hike_id=108&height=600&width=700" > 
    <p>Your browser does not support iframes.</p></iframe> 

    <p><a href="http://www.comehike.com/">Widget by comehike.com</p> 
</noscript> 

後:

<noscript> 
<iframe style="width:700px;height:600px" src="http://www.comehike.com/outdoors/hike_widget.php?hike_id=108&height=600&width=700" > 
    <p>Your browser does not support iframes.</p></iframe> 

    <p><a href="http://www.comehike.com/">Widget by comehike.com</a></p> 
</noscript> 

記住,<noscript>標籤裏的任何東西,只會顯示給,要麼不支持JavaScript,或者有它禁用瀏覽器。

1

<noscript>標記中的JavaScript將永遠不會被激活 - 僅當瀏覽器不支持<script>標記中指定的語言(或已禁用)時纔會呈現該元素。

要測試noscript標記,您可以使用HTML驗證器來確保您已將<noscript>標記放置在HTML中的有效/合法位置。

http://validator.w3.org/

除此之外,只需查看與禁用JavaScript頁面才能看到效果。

+0

謝謝 - 所以iframe的東西應該從noscript標籤中刪除,對嗎? – Genadinik 2011-06-01 15:56:32

+0

就我個人而言,我不會包裝noscript的iframe - 我沒有看到需要,顯然有些瀏覽器可以防止嵌入noscript標籤中的iframe。 – Mikaveli 2011-06-01 15:59:48

+0

http://www.w3schools.com/TAGS/tag_noscript.asp – Mikaveli 2011-06-01 16:01:33

相關問題