无法从html onclick启动javascript函数

Unable to launch javascript function from html onclick

本文关键字:启动 javascript 函数 onclick html      更新时间:2023-09-26

我相信这对你来说是一个非常简单的问题,但我就是不明白。

我有一些显示表的php代码,其中有一个div,onclik应该触发一个函数来更改单击的元素背景颜色。

这是我的HTML:

<div class='modRequiredLink' onclick='test();'>
   <div id='animated-example' class='animatedSlide'></div>
</div>

功能如下:

function test() {
    $(".modRequiredLink").click(function (event) {
        $(this).find("#animated-example").toggleClass("red");;
    });
}

现在,像这样,它可以工作,但需要点击两次才能触发,而如果我将功能更改为:

function test() {
        $(this).find("#animated-example").toggleClass("red");;
}

它已经不起作用了。。。

为什么?有什么建议吗?提前感谢

您的第一个代码段运行test()函数,该函数仅绑定一个要在click事件时调用的处理程序,但实际上并没有调用它。

您的第二个代码段不起作用,因为this不是指被单击的元素(而是指全局window)。试试这个:

<div class='modRequiredLink' onclick='test(this);'>
function test(elm) {
    $(elm).find("#animated-example").toggleClass("red");
}

试试这个:

function test() {
        $("#animated-example").toggleClass("red");
}

并不是所有的东西都必须与美元挂钩。