gpt4 book ai didi

javascript - jQuery - 删除()不工作

转载 作者:太空狗 更新时间:2023-10-29 13:25:47 24 4
gpt4 key购买 nike

我有一个脚本根据鼠标在页面主体上的位置放置 div。我有一个按钮,上面写着“清除”,我想用它来清除创建的 div。我怎样才能做到这一点?

我写的脚本和源码:

HTML

<!DOCTYPE html>
<html>
<body>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.18/jquery-ui.min.js"></script>
<script src="bhaiya.js"></script>
<button style="z-index: 2000;" class="clear" onclick="clear()">Clear</button>
</body>
</html>

jQuery

$(document).ready(function(){

$(this).mousedown(function(e){
$x = e.pageX;
$y = e.pageY;

$div = "<div class='theDiv' style='width: 250px; height: 150px; background-color:#e7e7e7; position: absolute; top:" + $y + "px; left:" + $x + "px;'>Hey</div>";
$("body").prepend($div);
});

function clear() {
$(".theDiv").remove();
}

})

jsFiddle: http://jsfiddle.net/BpAYz/

任何帮助将不胜感激:)

最佳答案

内联 html 属性事件处理程序只能调用全局 函数。您的 clear() 函数不是全局的,因为它是在内部您的文档就绪处理程序中定义的,因此您的 onclick="clear() " 找不到它。您需要将函数移到就绪处理程序之外(使其成为全局函数),或者更好的是,将点击与 jQuery 绑定(bind):

$(document).ready(function(){    
$(this).mousedown(function(e){
var $x = e.pageX;
var $y = e.pageY;
var $div = "<div class='theDiv' style='width: 250px; height: 150px; background-color:#e7e7e7; position: absolute; top:" + $y + "px; left:" + $x + "px;'>Hey</div>";
$("body").prepend($div);
});

$(".clear").click(function () {
$(".theDiv").remove();
});
});

另请注意,我在您的 mousedown 处理程序中的变量前面添加了 var:如果没有 var,它们将成为全局变量,这只会使您的代码更容易出错并且难以调试。 (除非你有充分的理由为什么它们应该是全局变量?)

关于javascript - jQuery - 删除()不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16999143/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com