【问题标题】:Jquery .click() doesn't work in chromeJquery .click() 在 chrome 中不起作用
【发布时间】:2013-04-23 23:22:00
【问题描述】:

我有这个奇怪的问题,我以前从未遇到过,它只出现在谷歌 Chrome 浏览器中。 我已经创建了一个函数来创建一个 writebutton(将一个值写入我的 PLC true ajax)。 这是它的外观:

    function makeWriteButton(id, address, value, startRefresher){

            $("#" + id).click( function() {
                writeData(address, value, startRefresher);
            });
    }

因此,您将输入按钮的 id 传递给该函数,该函数添加了一个单击事件处理程序,该函数在 IE、Firefox、Safari、Opera 中完美运行,但在 Chrome 中则不行。

有没有人有任何建议或理由说明这不起作用? 顺便说一句,这个功能以前在 chrome 上可以工作,但我不知道我做了什么,所以它在 chrome 上不再工作了,真的很奇怪。

【问题讨论】:

  • Chrome 开发者工具(F12)的控制台日志里有什么东西吗?
  • 通过alertconsole.log 测试你的id 输出,看看你得到了什么!例如,在点击事件中你可以做alert(id);
  • 你如何调用makeWriteButton函数,确保你的id被设置
  • 您是否使用$(document).ready() 包装了活动?
  • @djthoms thx 提示,当我添加警报时,会显示警报但该值未写入我的控制器(LED 不亮)所以我现在知道问题所在位于其他地方,但是因为相同的代码在 IE、FF 等中似乎运行良好。

标签: javascript jquery html


【解决方案1】:

我不认为你的问题出在那段代码中,这对我在 Chromium 上有用

<button id="but1">Button1</button>
<button id="but2">Button2</button>
<button id="but3">Button3</button>
<button id="but4">Button4</button>
<button id="but5">Button5</button>

function makeWriteButton(id, address, value, startRefresher) {
    $("#" + id).click(function () {
        alert(address + " " + value + " " + startRefresher);
    });
}

makeWriteButton("but3", 5, 6, 7);

jsfiddle

【讨论】:

  • 是的,我发现代码运行正常,我的写入功能一定有问题,我用警报进行了测试,我得到了警报,但我的控制器上的输出 LED 不亮.但我没有对我的写入功能进行任何更改,它曾经完美地工作,它仍然可以,但在 chrome 中没有:s 没有问题,或者在 firefox、safari、opera 中没有任何问题,即
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-13
  • 2013-12-22
  • 2015-05-31
相关资源
最近更新 更多