javascript - 使用 jQuery 的 Chrome 扩展

标签 javascript jquery google-chrome google-chrome-extension google-chrome-devtools

我下载了http://code.google.com/chrome/extensions/samples.html#ea2894c41cb8e80a4433a3e6c5772dadce9be90d 。 我想让它成为 jQuery,但如果我这样做:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.js"></script>

<script>
$("div").css('background-color', 'black');

$('.click').click(function(){
  chrome.tabs.executeScript(null,
    {code:"document.body.style.backgroundColor='" + $(this).attr('id') + "'"});
  window.close();
})
</script>
<div class="click" id="red">red</div>
<div class="click" id="blue">blue</div>
<div class="click" id="green">green</div>
<div class="click" id="yellow">yellow</div>

这不起作用。什么都没发生。为什么?

最佳答案

您没有包含文档就绪处理程序,请尝试以下操作:

<script>
    $(function() {
        $("div").css('background-color', 'black');

        $('.click').click(function() {
            chrome.tabs.executeScript(null,
                {code:"document.body.style.backgroundColor='" + $(this).attr('id') + "'"});
            window.close();
        })
    });
</script>
<div class="click" id="red">red</div>
<div class="click" id="blue">blue</div>
<div class="click" id="green">green</div>
<div class="click" id="yellow">yellow</div>

或者,您可以移动您的 <script>标记到 </body> 之前标签,以便所有 HTML 在 javascript 之前加载。

关于javascript - 使用 jQuery 的 Chrome 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9294928/

相关文章:

javascript - 如何在 WKWebView 中检测 history.pushstate

javascript - 在 HighCharts 中构建 "double divergent"轴标题

移动浏览器上的 Javascript/jQuery 页面更改事件

jquery - 修复了当 jquery 动画在 chrome 上淡入淡出时文本变得奇怪的问题

javascript - 如何使用 div 元素的名称分配变量

javascript - 计算趋势线并预测 future 结果

javascript - 为一个元素设置长度(高度或宽度)减去另一个元素的可变长度,即 calc(x - y),其中 y 未知

PHP - 使用 var_dump 时 SQL 查询返回 array(0) { }

javascript - 在 JCarousel 中获取当前项目的索引

jquery - DataTables 在 Google Chrome 中不显示行