2010-08-13 63 views
3

看來這段代碼將在Chrome和IE中請求文件,但不會在Firefox中請求該文件。HTML腳本標記和非JS內容 - Firefox

<script type="text/my-custom-mime-type" src="test.ashx"> 
</script> 

是否有一些規範說瀏覽器應該只處理JavaScript相關的MIME類型? 我知道IE可能支持這個,因爲歷史與VBScript。

一旦你有這樣的「內容」下載你如何獲得它? JavaScript/jQuery /?有一些方法可以解決這個問題。

UPDATE 所以有2部分問題。聽起來像第一部分 - 瀏覽器將下載它將下載的內容,我猜根據迄今爲止的答案,你可以做些什麼。

例子:
<script type="text/xml-script">
<page xmlns="http://schemas.microsoft.com/xml-script/2005"> <components>
<application load="page_load" />
</components>
</page>
</script>
</pre>

這是來自微軟的聲明MSAjax片段高科技。你可以從外部文件中拉入嗎?注意:我不想在這裏使用MSAjax,但它是一個用於腳本標記的自定義類型的好例子。

第2部分 - 如果「內容」下載,您可以訪問文本嗎?例如,讓我們說它的JavaScript - 你可以在文本框中顯示它嗎? (沒有明確的Ajax調用)?

+0

什麼代碼?請發表一個適當的例子 – mplungjan 2010-08-13 14:41:54

+0

我不明白這個問題,你可以舉一個例子或詳細說明嗎? – 2010-08-13 14:41:56

+0

如果它是JavaScript,爲什麼不把它聲明爲這樣,如果它不是JavaScript,你期望Firefox如何處理它? – Chris 2010-08-13 14:48:17

回答

5

是否有一些規範說瀏覽器應該只處理JavaScript相關的MIME類型?

type attribute

該屬性給出一個諮詢提示,內容類型的鏈接目標地址中可用的內容。它允許用戶代理選擇使用回退機制,而不是在獲取內容的時候獲取內容,而不是獲取內容。

如果您想要獲取腳本中使用的任意內容,請使用XMLHttpRequest。

+1

+1之外的其他內容,用於實際回答問題。現在我很好奇OP正在嘗試做什麼...... – jtbandes 2010-08-13 14:44:56

+0

jtbandes,什麼是OP? – BuddyJoe 2010-08-13 15:13:25

+0

原始海報。用於將第一條消息發佈到郵件列表,Usenet組或其他論壇上的主題的人的傳統術語。 – Quentin 2010-08-13 15:20:35

1

指定腳本的正規途徑是

<script src="something.js" type="text/javascript"></script> 

<script src="somethingThatWilReturnJavaScriptMime.someextension" type="text/javascript"></script> 

沒有理由的瀏覽器應該未知的MIME加載插入腳本代碼,這將是具體是否不嚴格的瀏覽器它將允許/忽略類型屬性

這將是一個測試問題,看看如果你實際發送的瀏覽器會做什麼

內容類型:文本/ JavaScript的

無論屬性類型

+0

不要緊,我發送什麼內容類型。我不想發送文本/ javascript – BuddyJoe 2010-08-13 17:41:57

0

您設置的內容類型。猜測.NET在這裏發佈基本思想:

public class Handler : IHttpHandler { 
    public void ProcessRequest (HttpContext context) { 
     context.Response.ContentType = "text/javascript"; 
     context.Response.Write("alert('hello world');"); 
    } 
} 
+0

對不起,只是使用ashx作爲例子。可以是任何文件擴展名。這正是我在.NET中生成非頁面內容的方式。但是腳本甚至可能是一個靜態文件。只是想知道它是否可能。 – BuddyJoe 2010-08-13 15:12:15