Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

the HTML script tag and non-JS content - Firefox

It appears this code will request the file in Chrome and IE but not in Firefox.

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

Is there a some spec that says browsers should only process JavaScript related mime-types? I know IE probably supports this because of the history with vbscript.

Once you have "content" like this downloaded how can you get access to it? Does JavaScript/jQuery/? have some way of getting at this.

UPDATE So there is 2 parts to question. Sounds like for the first part - the browser will download what it will download and I guess there isn't much you can do about that based off the answers so far.

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

this is a snippet from Microsoft's declarative MSAjax tech. Could you pull this in from an external file. Note: I'm not trying to use MSAjax here, but its a good example of a custom type being used for a script tag.

Part 2 - can you get access to the text if the "content" does download? For example, lets say its JavaScript - could you display it in a textbox? (without an explicit Ajax call)?

like image 533
BuddyJoe Avatar asked Oct 27 '25 07:10

BuddyJoe


2 Answers

Is there a some spec that says browsers should only process JavaScript related mime-types?

See the type attribute:

This attribute gives an advisory hint as to the content type of the content available at the link target address. It allows user agents to opt to use a fallback mechanism rather than fetch the content if they are advised that they will get content in a content type they do not support.

If you want to fetch arbitrary content for use in a script, use XMLHttpRequest.

like image 146
Quentin Avatar answered Oct 28 '25 21:10

Quentin


The canonical way to specify script is

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

or

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

There is no reason the browser should load unknown mime into a script tag and it will be strictly browser specific whether or not it will allow/ignore the type attribute

It would be a matter of testing to see what the browser will do if you actually send

content-type:text/javascript

regardless of type attribute

like image 21
mplungjan Avatar answered Oct 28 '25 20:10

mplungjan



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!