代码之家  ›  专栏  ›  技术社区  ›  BuddyJoe

HTML脚本标记和非JS内容-Firefox

  •  3
  • BuddyJoe  · 技术社区  · 14 年前

    这段代码似乎会在Chrome和IE中请求文件,但在Firefox中不会。

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

    有没有一个规范说浏览器应该只处理与JavaScript相关的mime类型?

    一旦你下载了这样的“内容”,你怎么能访问它?

    所以有两个问题。听起来像是第一部分-浏览器将下载它将下载的内容,我猜有没有多少你可以做的基础上,答案到目前为止。


    <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调用?

    3 回复  |  直到 14 年前
        1
  •  5
  •   Quentin    14 年前

    有没有一个规范说浏览器应该只处理与JavaScript相关的mime类型?

    看到了吗 type attribute :

    如果要获取脚本中使用的任意内容,请使用XMLHttpRequest。

        2
  •  1
  •   mplungjan    14 年前

    指定脚本的标准方法是

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

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

    浏览器没有理由将未知的mime加载到脚本标记中,并且它是否允许/忽略type属性将严格取决于浏览器

    这将是一个测试的问题,看看浏览器会做什么,如果你真的发送

    内容-type:text/javascript

    不考虑类型属性

        3
  •  0
  •   epascarello    14 年前

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