ドキュメント要素をグローバル変数に割り当てて、これらの要素をコードのどこでも使用できるようにしたいと考えています。
私のコード:
// document elements
var drop = null;
var status = null;
var show = null;
function process (drop, status, show) {
if (document.readyState == 'complete') {
// init elements
drop = document.getElementById(drop);
status = document.getElementById(status);
show = document.getElementById(show);
}
// init event handlers
drop.addEventListener('drop', handleDrop, false);
}
function handleDrop (evt) {
// do something
}
問題は、関数 handleDrop でグローバル変数を使用してドキュメント要素で何もできないことですが、関数プロセスではすべてが正常に機能します...
編集:たとえば、関数プロセスでは要素 show (show.innerHTML) のコンテンツを読み取ることができますが、関数 handleDrop では読み取れません。