0

现在,我被迫在鼠标悬停时运行我的方法,这实际上将匹配链接的部分 URL 更改为其他内容。如果我只是点击整个页面上的所有元素,我会受到巨大的性能影响甚至崩溃。如果我使用鼠标悬停动作,它不能与它打算使用的第 3 方 Chrome 扩展一起正常工作,但至少是稳定的。

这是我所在的位置:

$('body').on('mouseover', 'a', function(e) {
  e.preventDefault();
  if(this.href.match(/example.com/g)){
      this.href = this.href.replace('example.com', 'newexample.org');
  }
});

我想,而不是.replace在鼠标悬停时执行这个,而是全部example.com链接并在它们在屏幕上时转换它们,包括向下滚动时。这样,它将所有链接分解成更易于管理的块。这是我能想到的唯一方法,而无需同时点击所有页面链接并影响性能。

可能吗?

4

1 回答 1

1

从http://www.appelsiini.net/projects/viewport安装 jQuery Viewport 扩展

然后,您可以使用执行以下操作的滚动处理程序:

$('a:in-viewport[href*="example.com"]').each(function() {
    this.href = this.href.replace('example.com', 'newexample.org');
});
于 2013-10-11T19:23:34.137 回答