script要素埋込みに付いて考えた
外部からJavaScriptを呼び出すときに感じた話、あるブックマークレットから外部のスクリプトを呼び出す。
その際にscript要素をbodyに埋め込むのだが、そこで問題が起こる
「Script要素が存在しているか?」
である、俺はScript要素にidをつけている。
その結果がこれだ
function script_load(url){ var scriptElem = document.createElement('script'); scriptElem.setAttribute('type','text/javascript'); scriptElem.setAttribute('src',url); scriptElem.setAttribute('id','loads'); document.body.appendChild(scriptElem); } function load_tes(){ if(document.getElementById("loads")){ url_make() ; }else{ script_load("http://192.168.0.4/~masayoshi/link_list-db/bookmark_let/page_insert.js") ; load_tes() ; } } load_tes() ;
ある所に載ってた参考スクリプトを若干弄って使ってます、load_tes()って関数で外部関数を呼びます。
厳密には上の関数を中で呼び出すだけですが、そのload_tes()内でidの有無を評価して処理を決める。
これだけで住んだなんて・・・、とりあえずメモがわりに。