gpt4 book ai didi

jquery - 一个元素、一个事件、一个警报、一次点击、4 条消息

转载 作者:可可西里 更新时间:2023-11-01 13:17:14 34 4
gpt4 key购买 nike

HTML:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
<link type="text/css" href="galerina.css" rel="stylesheet"/>
</head>
<body>
<div class="galerina">
<img class="img1" src="images/1.jpg" alt=""/>
<img class="img2" src="images/2.jpg" alt=""/>
<img class="img3" src="images/3.jpg" alt=""/>
<img class="img4" src="images/4.jpg" alt=""/>
<p/>
</div>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js"></script>
<script type="text/javascript" src="galerina.js"></script>
</body>
</html>

CSS:

div.galerina{
max-width: 500px;
position: relative;
}

div.galerina img{
margin: auto;
display: none;
opacity: 0;
}

div.galerina img.galerina1, div.galerina img.bullet{
display: block;
opacity: 1;
}

JS:

/* Find each div with class galerina */
$("div.galerina").each(function(){
var gal=$(this);
var size=$(gal).children("img").size();
var i=0;
/* Find each img tag inside the div */
$(gal).children("img").each(function(){
var img=$(this);
/* Append an image to the gal and show an alert */
$(gal).append("<img src='images/bullet.png'/>").click(function(){
alert('test');
});
});
});

单击元素符号会弹出 4 个测试警报??

最佳答案

我认为您对 $(gal).append() 返回的内容感到困惑,它返回 $(gal) 而不是附加的内容。所以,当你这样说时:

$(gal).append("<img src='images/bullet.png'/>").click(function() { /* ... */ });

您正在向 $(gal) 添加一个点击处理程序,并且每次执行循环时都会执行一次,因此您最终会得到四个相同的点击处理程序。我想你想要更像这样的东西:

var $img = $('<img src="images/bullet.png"/>');
$img.click(function() { alert('test'); });
$(gal).append($img);

这会将点击处理程序放在附加图像上,而不是放在 $(gal) 上。

关于jquery - 一个元素、一个事件、一个警报、一次点击、4 条消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5696760/

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