JavaScript代码的语法错误 document.getElementById(“but”).onclick=function(e){ 摊牌下拉列表(本,e); }; 功能显示下拉列表(元素,e){ element.onclick=function(){}; if(e.stopPropagation)e.stopPropagation();//W3C模型 else e.cancelBubble=true;//IE模型 document.getElementById(“窗口”).style.display=“内联块”; document.onclick=函数(e){ var ele=document.elementFromPoint(e.clientX,e.clientY); if(ele==元素){ hideDropDown(); 返回; } 做{ if(ele==document.getElementById(“窗口”))返回; }while(ele=ele.parentNode); hideDropDown(元素); }; } 函数hideDropDown(元素){ document.onclick=function(){}; document.getElementById(“窗口”).style.display=“无”; element.onclick=函数(e){ 摊牌下拉列表(本,e); }; }​ 弹出窗口​

JavaScript代码的语法错误 document.getElementById(“but”).onclick=function(e){ 摊牌下拉列表(本,e); }; 功能显示下拉列表(元素,e){ element.onclick=function(){}; if(e.stopPropagation)e.stopPropagation();//W3C模型 else e.cancelBubble=true;//IE模型 document.getElementById(“窗口”).style.display=“内联块”; document.onclick=函数(e){ var ele=document.elementFromPoint(e.clientX,e.clientY); if(ele==元素){ hideDropDown(); 返回; } 做{ if(ele==document.getElementById(“窗口”))返回; }while(ele=ele.parentNode); hideDropDown(元素); }; } 函数hideDropDown(元素){ document.onclick=function(){}; document.getElementById(“窗口”).style.display=“无”; element.onclick=函数(e){ 摊牌下拉列表(本,e); }; }​ 弹出窗口​,javascript,javascript-events,Javascript,Javascript Events,错误:您有错误,因为您的文档未加载。 将代码放入窗口。onload: document.getElementById("but").onclick = function(e) { showDropDown(this, e); }; function showDropDown(element, e) { element.onclick = function() {}; if (e.stopPropagation) e.stopPropagation();

错误:

您有错误,因为您的文档未加载。
将代码放入
窗口。onload

document.getElementById("but").onclick = function(e) {
    showDropDown(this, e);
};

function showDropDown(element, e) {
    element.onclick = function() {};
    if (e.stopPropagation) 
        e.stopPropagation(); // W3C model
    else 
        e.cancelBubble = true; // IE model
    document.getElementById("window").style.display = "inline-block";
    document.onclick = function(e) 
    {
        var ele = document.elementFromPoint(e.clientX, e.clientY);
        if (ele == element) {
            hideDropDown();
            return;
        }
        do {
            if (ele == document.getElementById("window")) return;
        } while ((ele = ele.parentNode) !== null);
        hideDropDown(element);
    };
}

function hideDropDown(element){
    document.onclick = function() {};
    document.getElementById("window").style.display = "none";
    element.onclick = function(e) {
        showDropDown(this, e);
    };
}
或者,如果您正在使用jquery:

window.onload=function(){
  //code
}

您所做的是在您复制或编写此代码的地方,其中很可能有一个bug。已经知道有这样的问题。您需要做的是在记事本或文本编辑等简单编辑器中键入该部分代码(错误上方1行,下方1行),然后复制该部分代码并替换当前代码。我知道这是一个错误,因为
未执行的标记非法
部分意味着放置在那里的隐藏字符显然不符合JavaScript,因此根本不是语法错误


对我有用。

看起来你没找到标签!!把它放在你的标签上面。我看了一下,完全是我说的:你有一个隐藏的非法角色。你可能想在编辑器中打开“显示隐藏字符”,看看是否可以删除隐藏字符。我同意@think123的说法,没错。我是从JSFIDLE复制的。我不知道。谢谢分享:)。@SamiAl Subhi如果你认为我的答案是好的,那么请你勾选我的答案是否正确?我认为语法错误无关紧要,不是吗?这不会是
意外标记非法
错误的一部分。我记不清那类错误,但它与“null”有关,因为元素还不存在。你至少应该解释一下代码工作的原因。在while条件下,没有bool检查(严格错误)(在document.onclick函数中)和musa指出的隐藏字符。。。
window.onload=function(){
  //code
}
$(document).ready(function(){
  //code
});