gpt4 book ai didi

javascript - 如何使用 javascript 在表单元素上添加 .click() 事件?

转载 作者:行者123 更新时间:2023-11-28 02:52:37 25 4
gpt4 key购买 nike

HTML代码:

<body>
<select multiple="multiple" id="imglist" class="image-picker show-html">
<option><a href="http://placekitten.com/220/200" target="_blank">Cute Kitten 1</a></option>
<option><a href="http://placekitten.com/180/200" target="_blank">Cute Kitten 1</a></option>
<option><a href="http://placekitten.com/130/200" target="_blank">Cute Kitten 1</a></option>
</select>
</body>

CSS 代码:

.thumbnails {
overflow: auto;
list-style-image: none;
list-style-position: outside;
list-style-type: none;
padding: 0px;
margin: 0px;
}

.thumbnails li {
float: left;
}

.image-picker option {
border-radius: 15px;
}

.image_picker_image {
border-radius: 118px !important;
height: 50px !important;
width: 50px !important;
}

ul.thumbnails.image_picker_selector li .thumbnail.selected {
/* background: #fff !important; */
border: 0px !important;
filter: alpha(opacity=40) !important;
opacity: 0.6 !important;
background-image: url('https://cdn0.iconfinder.com/data/icons/feather/96/circle-check-128.png') !important;
background-size: contain !important;
}

ul.thumbnails.image_picker_selector li .thumbnail {
border: 0px !important;
}

ul.thumbnails.image_picker_selector li .thumbnail.selected {
background: #fff !important;
}

Javascript 代码:

function imgpop() {
var il, imga, imgatxt;
il = document.getElementById('imglist').getElementsByTagName('option');
for (i = 0; i < il.length; i++) {
imga = il[i].getElementsByTagName('a')[0];
imgatxt = imga.firstChild;
imgatxt.nodeValue = imgatxt.nodeValue.replace(/ \(new window\)/, '');
imga.onclick = function() {
return popw(this);
}
//imga.onkeypress=function(){return popw(this);}
}
}

function popw(o) {
var newimg;
if (o.parentNode.getElementsByTagName('img').length > 0) {
o.parentNode.removeChild(o.parentNode.getElementsByTagName('img')[0]);

} else {
newimg = document.createElement('img');
newimg.style.display = 'block';
newimg.onclick = function() {
this.parentNode.removeChild(this);
};
newimg.src = o.href;
o.parentNode.appendChild(newimg)
}
return false;
}

if (document.getElementById && document.createTextNode) {
window.onload = function() {
imgpop();
}
}

我想在点击选项标签时生成图像。点击选项标签图像后应该隐藏。如果我选择第一个选项标签,它应该显示图像。与所有选项标签相同。我的 js 文件不适用于标签“select option/option/select”,但如果我在“ul li/li/ul”标签下提供图像,它就会开始工作。

最佳答案

您可以使用 jQuery 在表单元素上添加一个 .click() 事件,如下例所示。

来自 jQuery 的文档详细信息:https://api.jquery.com/click/

可以像这样在 vanilla JavaScript(没有 jQuery)中做同样的事情:

document.getElementById("imglist").addEventListener('click', function (){console.log('execute on click')});

$(function() {
$('#imglist').click(function(event) {
alert(event.target.value);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select multiple="multiple" id="imglist" class="image-picker show-html">
<option>Cute Kitten 1</option>
<option>Cute Kitten 2</option>
<option>Cute Kitten 3</option>
</select>

关于javascript - 如何使用 javascript 在表单元素上添加 .click() 事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38782037/

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