Abfrage auf Feld-ID klappt nicht
bearbeitet von Rolf BHallo dedlfix,
es geht mit 2 Script-Blöcken. Der erste geht kaputt, wenn let nicht funktioniert, und der zweite findet dann das Attribut nicht. Durch die IIFE im ersten Block wird sichergestellt, dass der Prüfblock keine Spuren hinterlässt außer einem temporären Attribut auf dem body.
~~~html
<script>
(function() {
let a=7;
document.body.setAttribute("let_is_working", 1);
})();
</script>
<script>
if (document.body.getAttribute("let_is_working"))
alert("I can let!");
else
alert("Let it be!");
document.body.removeAttribute("let_is_working");
</script>
~~~
Nur, was macht man aus dieser Erkenntnis? Ob ich let oder var verwende, dürfte auf die Performance meines Scripts keinen Einfluss haben. Wenn ich also für die Let It Be Fraktion JavaScript anbieten will, dann schreibe ich eben alles für diese Sprachversion (bzw. stelle mein TypeScript oder Babel entsprechend ein).
Würde jemand eine "große Javascript" Lösung mit let/const/... bauen und eine kleine Fallback-Version für var? Würde jemand auf die noscript-Version seiner Seite zurückfallen, weil let nicht funktioniert? Würde jemand mit Hilfe von TypeScript oder Babel zwei Versionen seines JavaScript vorhalten? Die Frage ist ernst gemeint, ich kann es nicht beantworten.
_Rolf_
--
sumpsi - posui - clusi