javascript - 单击处理程序在内容脚本中不起作用

标签 javascript jquery google-chrome google-chrome-extension content-script

我通过 chrome 扩展内容脚本运行以下代码。我无法让点击处理程序工作。通过 manifest.json 中的 run_at 标志,脚本在 document_end 处运行。有什么想法吗?

$(document).ready(function () {
  var enabled = true;

  $('body').append("<button id='#alarmButton'>Disable Alarm</button>");

  $('#alarmButton').on('click', function () {
    console.log('clicked');
    if (enabled == true) {
      enabled = false;
      $('#alarmButton').text('Enable Alarm');
    } else {
      enabled = true;
      $('#alarmButton').text('Disable Alarm');
    }
  });
});

最佳答案

您不需要在您的 id 属性中添加 #

改变

$('body').append("<button id='#alarmButton'>Disable Alarm</button>");

$('body').append("<button id='alarmButton'>Disable Alarm</button>");

对于点击事件使用:

$('body').on('click', '#alarmButton', function () {})

Jsfiddle

关于javascript - 单击处理程序在内容脚本中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33980478/

相关文章:

google-chrome - VLC 网络播放器在 Google chrome 浏览器中不起作用

google-chrome - Google 通知上的点击事件

javascript - 如何使用 jQuery 将正文类添加到首页和内部页面?

javascript - 粘性标题列与表格列不匹配

PHP+Ajax 传递输入关键字进行实时搜索

google-chrome - 在 headless (headless) debian 系统上通过 Selenium 启动 google-chrome

javascript - Chrome 正在破坏我在触摸屏上的网络应用程序设计

javascript - Rails 中渲染表单的结果没有表单标签,只有输入

javascript - 如何动态地将一大块 HTML 附加到 div 中?

javascript - 如何在 FireBug 中调试动态 JavaScript 函数