gpt4 book ai didi

javascript - css背景图片上的onclick事件?

转载 作者:可可西里 更新时间:2023-11-01 13:48:08 25 4
gpt4 key购买 nike

我在 html 中创建了一个 div,它创建了一个文本框并为其分配了一个背景图像,我想为该输入字段的背景图像创建一个 onclick 事件。

document.getElementsByClassName("textboxcss").onclick = function() {
alert("Hello");
};
.textboxcss {
background-image: url("../images/sub.png");
background-repeat: no-repeat;
background-position: right;
background-position: 8px 13px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<div>
<input class="textboxcss" id="default" type="text">
</div>

我看到正确获取图像...但我无法通过这种方式获得 onclick。还有其他办法吗?

最佳答案

更新了答案

尝试使用 querySelector()

(function(){
document.querySelector(".textboxcss").onclick = function () {
alert("Hello!");
};
}());

示例:https://jsfiddle.net/sj7n7eko/3/


如果您想使用 getElementsByClassName(),您必须遍历选择器元素并绑定(bind) onClick 事件。因为 getElementsByClassName() 返回一个 Array

(function(){

var textInputs = document.getElementsByClassName("textboxcss");

Array.prototype.forEach.call(textInputs, function () {
this.onclick = function () {
alert("Hello!");
};
});

}());

示例:https://jsfiddle.net/sj7n7eko/5/


还注意到您在更新的问题中使用了 jquery,

然后你就可以简单地使用jQuery了

$(".textboxcss").click(function(){
alert("Hello!");
});

或者如果您动态添加元素,

$("body").on("click", ".textboxcss", function(){
alert("Hello!");
});

关于javascript - css背景图片上的onclick事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39078085/

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