简体   繁体   中英

Can Firebug Lite be loaded conditionally?

I'd like to be able to load Firebug lite conditionally (eg, based on the value of debug variable). I've tried this:

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

at the top of my <head> , but to no avail. Anyone have any suggestions?

After creating an element, you need to insert it into the DOM. This can be done using .appendChild() .

Add this to your if :

var head = document.getElementsByTagName("head")[0]; 
head.appendChild(fileref);

You could add this to your footer. I'm open to criticism. If you can make this better, go for it.

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM