Ich erwarte, dass das Standardverhalten darin besteht, keine Assets in einem Element <noscript>
zu laden, und ein schneller oberflächlicher Test in FF und Chrome beweist, dass dies der Fall ist. Gibt es jedoch Situationen, in denen Assets (z. B. ein Bild) in einem Element <noscript>
geladen werden, wenn Skripts aktiviert sind?Laden von Assets in ein Noscript-Element
Antwort
Nach W3 specifications:
Das NOSCRIPT Element ermöglicht Autoren alternativen Inhalt zu liefern, wenn ein Skript nicht ausgeführt wird. Der Inhalt eines NOSCRIPT-Elements sollte in den folgenden Fällen nur von einem skriptsensitiven Benutzeragenten gerendert werden: Der Benutzeragent ist so konfiguriert, dass keine Skripts ausgewertet werden. Der Benutzeragent unterstützt keine Skriptsprache, die zuvor von einem SCRIPT-Element aufgerufen wurde. Benutzeragenten, die clientseitige -Skripts nicht unterstützen, müssen den Inhalt dieses Elements rendern.
Also ich denke, genau wie Ihre Tests bewiesen: Elemente in einem <noscript>
Abschnitt nicht wiedergegeben werden (das heißt auch heruntergeladen) überhaupt, wenn der Client unterstützt <script>
Elemente.
Ich habe auch gerade dies auf einer Seite von mir getestet, die ein Bild innerhalb seiner <noscript>
Teil verwendet und weder Chrome, FF, Opera oder der IE zeigten Interesse daran, das Bild herunterzuladen.
Ich denke, es hängt genau davon ab, was du meinst. Nehmen Sie diese Markup:
<!DOCTYPE html>
<html>
<head>
<title>Test Case</title>
</head>
<body>
<noscript id="ns">
</noscript>
<script>
var ns = document.getElementById("ns");
ns.innerHTML = "</noscript><img src='http://www.alohci.net/dummy'>";
</script>
</body>
</html>
In Firefox dies in einem <img>
Element innerhalb des <noscript>
Element führen und das Bild Bezug genommen wird, vom Server geholt.
Hinweise:
1. Ich habe keine Ahnung, warum das passiert.
2. Nur Firefox scheint dies zu tun.
3. Ich kann mir keine Verwendung vorstellen.
Denken Sie nicht, dass es dies tun wird, wenn es richtig konfiguriert ist: http://www.w3.org/TR/html4/interact/scripts.html#h-18.3.1 Auch nur auf einer Website mit einem Bild getestet in einem '
@ m90 Danke. Dies sollte wahrscheinlich eine Antwort sein, kein Kommentar! Auf welche Browser haben Sie abgezielt? – Matty
Ich schaute auf Chrome, FF, Opera und IE. Wird das sofort beantworten. – m90