MozillaZine.jp フォーラム https://forums.mozillazine.jp/ |
|
DOM で要素にアクセスできない https://forums.mozillazine.jp/viewtopic.php?f=26&t=16419 |
ページ 1 / 1 |
作成者: | mitsugu [ 2016年12月17日(土) 20:36 ] |
記事の件名: | DOM で要素にアクセスできない |
WebExtensions に対応した拡張を書いています。 表題にありますようにユーザインターフェースを構成する HTML 文書のある要素に DOM でアクセスができません。具体的には location.js で示した JavaScript コードの getElementById で HTMLElement ではなく、null が返ってきます。要素を取得するにはどうすればよいでしょうか。 なお、location.html は browser.windows.create() にて POPUP させています。 location.html コード: <!DOCTYPE html> <html> <head> <title>Location</title> <meta charset="UTF-8"> <script src="location.js"></script> <link rel="stylesheet" type="text/css" href="location.css"> </head> <body id="main_box"> <div id="prefecture_box"> <div>都道府県</div> <select name="prefecture" size="1" id="pref_list"> <option>北海道</option> <option>青森県</option> <option>秋田県</option> <option>岩手県</option> <option>山形県</option> <option>宮城県</option> <option>福島県</option> <option>茨城県</option> <option>栃木県</option> <option>群馬県</option> <option>埼玉県</option> <option>東京都</option> <option>神奈川県</option> <option>千葉県</option> <option>静岡県</option> <option>山梨県</option> <option>新潟県</option> <option>長野県</option> <option>富山県</option> <option>石川県</option> <option>福井県</option> <option>岐阜県</option> <option>愛知県</option> <option>三重県</option> <option>滋賀県</option> <option>京都府</option> <option>大阪府</option> <option>奈良県</option> <option>和歌山県</option> <option>兵庫県</option> <option>岡山県</option> <option>鳥取県</option> <option>広島県</option> <option>島根県</option> <option>山口県</option> <option>香川県</option> <option>徳島県</option> <option>愛媛県</option> <option>高知県</option> <option>福岡県</option> <option>佐賀県</option> <option>長崎県</option> <option>大分県</option> <option>熊本県</option> <option>宮崎県</option> <option>鹿児島県</option> <option>沖縄県</option> </select> </div> <div id="region_box"> <div>地方</div> <select name="region" size="1" id="reg_list"> </select> </div> </body> </html> location.js コード: var elm=document.getElementById('pref_list');
console.log(elm); |
作成者: | mitsugu [ 2016年12月18日(日) 10:16 ] |
記事の件名: | Re: DOM で要素にアクセスできない |
自己解決しました。 ケアレスミスでした。以下のように location.js のコードを変更するとうまく行きました。文書をロードし終える前に getElementById を実行していました。 コード: (function(){
document.addEventListener("DOMContentLoaded", function(){ var elm=document.getElementById('pref_list'); console.log(elm); }, false); })(); |
ページ 1 / 1 | All times are UTC + 9 hours |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |