javascript – 为什么我的jQuery空无效?

前端之家收集整理的这篇文章主要介绍了javascript – 为什么我的jQuery空无效?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Is “clear” a reserved word in Javascript?4个
<!DOCTYPE html>
<html lang="en">
<head>
    <Meta charset="UTF-8">
    <script src="https://code.jquery.com/jquery-2.2.3.min.js"></script>
</head>
<body>

<button type="button" onclick="submit();">launch</button>
<button type="button" onclick="clear();">clear</button>


<div>
    Result:<br>
    <div id="result">
    </div>
</div>
<script>
    function clear() {
        $('#result').empty()
    }

    function submit() {
        $('#result').append('<div>xxxxx</div>')
    }
</script>
</body>
</html>

启动按钮运行良好,但清除没有.我在控制台中运行$(‘#result’).empty(),它按预期清除div.

您可以在jsfiddle中调试我的代码.

解决方法

在内联处理程序中调用clear()实际上是在调用另一个名为document.clear()的东西,因此永远不会调用你的函数.

这是因为在内联处理程序中,文档在窗口之前的范围内,而clear函数位于全局范围内,这是浏览器的窗口.

您可以将函数名称更改为其他名称

<button type="button" onclick="myClear();">clear</button>

function myClear() {
    $('#result').empty()
}

或者,我宁愿避免使用内联处理程序,也避免污染全局范围.

$(function(){
    function clear() {
        $('#result').empty();
    }

    $('.clear').click(function(){
        clear();
    });
});
原文链接:https://www.f2er.com/jquery/158420.html

猜你在找的jQuery相关文章