如何使用jQuery在页面中定位字符串/电子邮件地址

时间:2015-09-24 16:38:52

标签: javascript jquery html google-chrome-extension

我正在尝试创建一个脚本,在整个网页中搜索以@ xyz.com结尾的电子邮件地址。例如:

$(document).ready(function() {
    $("body:contains('@xyz.com')")
       .css("text-decoration","underline");
  /*$("*:contains('@xyz.com')")
       .css("text-decoration","underline"); doesn't work either */
    I figured contents(); wouldn't be a better choice over contains(); ... 
});

出于某种原因,它似乎无法检测到我在页面上的段落中硬编码到我的页面中的任何电子邮件地址。

我无法将选择器绑定到特定的div,因为此脚本将在不同的网页上运行,因此无法控制电子邮件地址所呈现的元素。但是......即使我设法解决了这个问题,我还有另一个问题要处理...

网页上的电子邮件地址将是随机的,但都将以@ xyz.com结尾。因此,我必须选择@符号左边的任何内容,直到它检测到字符之间的空格。

我只能找到如何从列表中检测电子邮件或在表单上验证等的解决方案。

我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

问题是您的脚本在后台页面中运行,而不是在页面中运行。后台页面无法直接访问由chrome加载的页面的DOM。

要执行您想要的操作,请查找内容脚本。这允许您将脚本注入给定页面(如在chrome的活动选项卡中加载的页面)。此脚本可以对DOM执行操作,并通过chrome的Messaging API与后台页面进行通信。

Here more informations