Можно ли загрузить Firebug Lite условно? - PullRequest
1 голос
/ 08 июня 2011

Я бы хотел иметь возможность загружать 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>, но безрезультатно. У кого-нибудь есть предложения?

Ответы [ 2 ]

4 голосов
/ 08 июня 2011

После создания элемента вам необходимо вставить его в DOM.Это можно сделать с помощью .appendChild().

Добавьте это к вашему if:

var head = document.getElementsByTagName("head")[0]; 
head.appendChild(fileref);
0 голосов
/ 31 января 2015

Вы можете добавить это в свой нижний колонтитул. Я открыт для критики. Если вы можете сделать это лучше, сделайте это.

<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>
...