Я бы хотел иметь возможность загружать Firebug lite условно (например, на основании значения переменной отладки). Я пробовал это:
<script type="text/javascript"> var fileref; if(condition) { fileref=document.createElement('script') fileref.setAttribute("type","text/javascript") fileref.setAttribute("src", "https://getfirebug.com/firebug-lite.js") } </script>
наверху моего <head>, но безрезультатно. У кого-нибудь есть предложения?
<head>
После создания элемента вам необходимо вставить его в DOM.Это можно сделать с помощью .appendChild().
.appendChild()
Добавьте это к вашему if:
if
var head = document.getElementsByTagName("head")[0]; head.appendChild(fileref);
Вы можете добавить это в свой нижний колонтитул. Я открыт для критики. Если вы можете сделать это лучше, сделайте это.
<script> // First uncomment this to get your user agent, // So we can hide Firebug Lite from the general public // Remember to change this if you change browsers :-) // document.write("<p>User agent: "+ navigator.userAgent +"</p>"); // Note: Not sure why but Firebug Lite may open in a new tab, even if you tell it not to // UNLESS you use Google Chrome for Android (NOT the Beta version!) if ( navigator.userAgent == "Mozilla/5.0 (Linux; Android 4.4.2;" ) { var fileref; fileref=document.createElement("script"); fileref.setAttribute("type","text/javascript"); // Pick your version here https://getfirebug.com/firebuglite fileref.setAttribute("src", "http://fbug.googlecode.com/svn/lite/branches/firebug1.4/content/firebug-lite-dev.js"); // Add to DOM var head = document.getElementsByTagName("head")[0]; head.appendChild(fileref); } /* Defaults (supposedly) saveCookies - false startOpened - false startInNewWindow - false showIconWhenHidden - true overrideConsole - true ignoreFirebugElements - true disableXHRListener - false disableWhenFirebugActive - true enableTrace - false enablePersistent - false */ </script>