Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jQuery Select current script tag

Does somebody know if its possible to select the current script-tag with jQuery without any other selectordefinitions?

<script type="text/javascript">
$(document).ready( function(){
    // Here i need to select the current tag "<script ..."
})
</script>
like image 830
AppGeer Avatar asked Aug 01 '14 17:08

AppGeer


2 Answers

Outside the document ready method, just do $('script').last();:

<script type="text/javascript">
var currentScript = $('script').last();
$(document).ready( function(){
    //Use the variable currentScript here
})
</script>

Or simply give an id to your script.

like image 171
Karl-André Gagnon Avatar answered Nov 15 '22 07:11

Karl-André Gagnon


The most robust way to achieve this is:

<script>
 (function(script){
    //do whatever you want with script here...
 })(document.currentScript);
</script>

It is more robust than other solutions because you may also use it after the document has loaded. Also it does not require the definition of a variable (if you have several script tags this might be an issue since you cannot reuse the same variable name). With JQuery:

<script>
     (function(script){
        $(document).ready(function(){
            // do whatever you want after the DOM as loaded here...
        });
     })(document.currentScript);
</script>
like image 7
Vincent Pazeller Avatar answered Nov 15 '22 09:11

Vincent Pazeller