相关疑难解决方法(0)

监听表行数变化

我正在使用 html 表。我的要求是,我想监听行数的变化。有办法实现这个目标吗?

注意:我这里没有添加/删除行功能来实现。

此外,我已经尝试过这个,

$("#myTable>tbody>tr").watch("length", function () {
    alert("row count changed..")
});
Run Code Online (Sandbox Code Playgroud)

但是,上面的代码对我不起作用。你们中有人知道该怎么做吗?

提前致谢,

-拉贾。

html jquery jquery-ui

3
推荐指数
1
解决办法
1万
查看次数

从浏览器操作弹出窗口:打开一个新选项卡并填写输入字段

我正在尝试构建一个基本的 Chrome 扩展程序,该扩展程序从浏览器操作弹出窗口中,在新选项卡中打开一个网站,并填写登录凭据。我可以使用 Chrome 扩展程序打开新页面,但似乎无法将文本输入到输入字段中。

清单文件

{
  "manifest_version": 2,

  "name": "Vena",
  "description": "This extension will allow users to login to vena accounts",
  "version": "1.0",

  "browser_action": {
   "default_icon": "images/icon.png",
   "default_popup": "popup.html"
  },
  "permissions": [
   "activeTab"
   ]
}
Run Code Online (Sandbox Code Playgroud)

弹出窗口.html

<!doctype html>
<html>
  <head>
    <title>Auto-Login</title>
    <script src="popup.js"></script>
  </head>
  <body>
    <h1>Login</h1>
    <button id="checkPage">Login!</button>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

弹出窗口.js

document.addEventListener('DOMContentLoaded', function() {
  var checkPageButton = document.getElementById('checkPage');
  checkPageButton.addEventListener('click', function() {

    var newURL = "https://vena.io/";
    chrome.tabs.create({ url: newURL });

    var loginField = document.getElementsByClassName('js-email form-control input-lg');
    var passwordField = document.getElementsByClassName('js-password …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome-extension content-script

3
推荐指数
1
解决办法
2312
查看次数

如果更改DOM,您如何做某事?

如何检测文档何时更改?

我知道我可以这样做:

var lastHTML = document.body.innerHTML;
setInterval(function() { if(document.body.innerHTML != lastHTML) { DOMupdated() } }, 500);
Run Code Online (Sandbox Code Playgroud)

但是有没有我可以放置的事件处理程序,比如onchange?

javascript javascript-events

2
推荐指数
1
解决办法
82
查看次数

使用 jquery 检测变量变化

我向服务器发出 AJAX 调用来读取文件并获取返回值作为响应。如果请求成功,那么我将元素中的innerHTML 替换为带有响应值的<p>id 。output现在,如果值发生变化,我会尝试每次都发出警报。我尝试向我的<p>元素添加一个事件,以便我可以检测变量是否已更改并触发我的函数:

<p id="output"></p>

<script>
    $("#output").change(function() {
        alert("HELLO WORLD!");
    });
</script>
Run Code Online (Sandbox Code Playgroud)

没有alert()出现。

javascript jquery

2
推荐指数
1
解决办法
9694
查看次数

监听DOM事件(具体属性)

我需要在添加特定属性时获取数据。我读过这篇文章:Is There a JavaScript/jQuery DOM Change Listener?

  var observer = new MutationObserver(function (mutations, observer) {
    // fired when a mutation occurs
     $.each(mutations, function(index, mutation) {

      var post = $(mutation.target).find('div[class^="ContentWrapper"]');


     });
  });
  observer.observe(document, {
    subtree: true,
    attributes: true

  });
Run Code Online (Sandbox Code Playgroud)

这种方法存在一个问题,因为事件太多并且扩展非常慢,是否可以选择按特定属性过滤突变?

javascript google-chrome-extension mutation-observers

2
推荐指数
1
解决办法
6869
查看次数

用于哈希更改的 Chrome 扩展 WebNavigation 侦听器

我一直在使用chrome.webNavigation.onCommittedonCompleted听众成功地检测到页面的变化,但现在有一些网站,加载新的网页完全只用URL的散列部改变。这些更改不会触发这两个侦听器。有什么方法可以指示 chrome.webNavigation API 监听 URL 中的这些更改?或者 Chrome 扩展程序中是否有其他方法可以做到这一点?

google-chrome-extension

2
推荐指数
1
解决办法
2181
查看次数

Chrome 扩展程序在重定向后不会注入内容脚本

我正在开发一个 Chrome 扩展,它与 Twitter 交互并在用户访问 twitter.com/home 时注入内容脚本。我在 manifest.json 中声明了 content_scripts,并且在 twitter.com/home 上一切正常。但是,当我访问 twitter.com 时,它会重定向到 twitter.com/home 并且扩展程序不会注入内容脚本。将“twitter.com”添加到 manifest.json 中的“匹配”列表中可以解决问题,但我希望扩展仅在 twitter.com/home 加载时注入脚本。我正在考虑使用 webNavigation API 来检测重定向,但我想知道是否有更有效的方法来实现这一点。谢谢!

清单.json

  "name": "xxx",
  "version": "1.0",
  "description": "abc",
  "permissions": [
    "activeTab",
    "declarativeContent",
    "storage"
  ],
  "content_scripts": [
    {
      "matches": ["https://twitter.com/home", "https://twitter.com/"],
      "run_at": "document_idle",
      "js": ["script.js"]
    }
  ],
  "background": {
    "scripts": ["background.js"],
    "persistent": false
  },
  "manifest_version": 2
}

Run Code Online (Sandbox Code Playgroud)

google-chrome-extension

2
推荐指数
1
解决办法
992
查看次数

chrome 扩展:尽管 run_at: document_idle,js 脚本还是过早触发

理论上,如果我设置 run_at,则用于选择页面上元素的 .js 应该在页面完全加载后触发。但事实似乎并非如此。

在我的 content.js 中,我有

    "content_scripts": [
        {
          "js": ["extensions/jquery-2.2.2.min.js", "content.js"],
          "run_at": "document_idle"
        }
      ]
Run Code Online (Sandbox Code Playgroud)

在我的 content.js 中,我只有:

alert("alert");
console.log("hello");
var fullname2 = $('#topcard').find('.profile-info').find('h1').text();
console.log(fullname2);
Run Code Online (Sandbox Code Playgroud)

警报和第一个 console.log 都有效。第二个控制台日志不记录任何内容,因为选择器未能选择任何内容。我知道这一点是因为如果我为 content.js 代码块添加 setTimeout,并等待 2 秒,第二个控制台日志将正确显示 fullname2。

知道为什么 content.js 明显在页面完全加载之前触发,导致选择器找不到任何东西吗?

html javascript jquery google-chrome-extension

1
推荐指数
1
解决办法
720
查看次数

Chrome 扩展程序检测 Google 搜索刷新

我的内容脚本如何检测 Google 搜索的刷新?我相信这是页面的 AJAX 重新加载,而不是“真正的”刷新,因此我的事件不会检测到刷新。

是否可以在 Google Chrome 扩展和 Firefox WebExtensions 附加组件中以某种方式检测到它?

google-chrome-extension firefox-addon-webextensions

1
推荐指数
1
解决办法
1651
查看次数

如何使用 chrome 扩展检测 url 的变化?

我正在学习制作 chrome 扩展。我遇到了一个问题,当alert("test");onload 未激活时,我想要运行的上下文脚本(即使只是)也无法运行。当您按后退箭头访问上次访问的页面时,也会发生这种情况。我注意到网址发生了变化,但没有任何激活。我如何检测到这一点?如果答案是服务人员,那么详细的解释将不胜感激。

html javascript google-chrome-extension

1
推荐指数
1
解决办法
5486
查看次数

如何检测div或body的变化?

我有一个以下脚本,我需要检测:

  • 内容元素有变化(例如大小/位置)或
  • body元素有变化(例如大小/位置)

我不能在按钮本身上使用这个逻辑.

有什么活动?你能提供代码样本吗?

http://jsbin.com/sewerumive/1/

<!DOCTYPE html>
<html>

<head>
    <title></title>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <script>
        window.App = {
            start: function () {
                var btn = document.getElementById('addContent');
                btn.addEventListener('click', function () {
                    var body = document.getElementsByTagName('body')[0];
                    body.innerHTML += '<p>ADDED LATER - Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industrys standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a …
Run Code Online (Sandbox Code Playgroud)

html javascript css dojo

0
推荐指数
1
解决办法
3111
查看次数