当其他工作正常时,document.getElementById返回null

Roy*_*ley 0 javascript exception isnull

我在SO和网络上看过很多其他帖子,但是这些帖子涉及在创建元素之前尝试添加事件处理程序.我的情况有所不同.

我有一个html文档,其中包含以下部分:

<nav id="main_menu">                
            <ul>                
                <li id="liMapFilter" class="list"><img id="imgFilter" src="images/filter_icon.png">Filter</li>
                <li id="liDiagnostics" class="list"><img id="imgTools" src="images/tools_icon.png">Administration</li>              
            </ul>           
        </nav>
Run Code Online (Sandbox Code Playgroud)

我设置页面加载后,通过调用多个事件处理程序:

$(document).ready(function() {
    home.init();
});
Run Code Online (Sandbox Code Playgroud)

home.init()函数中我设置了以下监听器:

var elmMapFilter = document.getElementById('liMapFilter"');
cs_core.addEvent(elmMapFilter, 'click', home.showDialogMapFilter, false);
Run Code Online (Sandbox Code Playgroud)

所有其他侦听器处理程序都很好,但是这个特定的处理程序总是抛出一个空引用.我无法理解这个处理程序何时正常工作:

var elmDiagnostics = document.getElementById('liDiagnostics');
cs_core.addEvent(elmDiagnostics, 'click', core.showDiagnostics, false);
Run Code Online (Sandbox Code Playgroud)

请指教.

Poi*_*nty 5

你有一个印刷错误."你的身份中有一个流浪的角色.