Chrome扩展,从
问题描述:
页
收到电子邮件这样的想法是为了让Chrome扩展的Web电子邮件客户端搜索电子邮件地址,然后显示有关从数据库中的客户信息。Chrome扩展,从
我设法找到了获取当前与此选项卡HTML源: Getting the source HTML of the current page from chrome extension
然后用拆分,正则表达式或东西收到一封电子邮件,并调用一些PHP脚本这将解析信息。一切都将是巨大的,但我们使用“松鼠邮件”,它采用的I帧所以很明显我得到的是一些头和iframe的链接。
任何人都可以点我朝着正确的方向?也许有可能获得标签文本而不是HTML源代码?从来没有任何铬扩展的经验..任何帮助,使其更快会很好。我显然知道我想获得的电子邮件的某个位置。
卡斯拉夫几乎排序它我只是坚持在这种情况下获取帧,因为它没有一个id选择器。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html><head>
<meta name="robots" content="noindex,nofollow">
<title>SquirrelMail</title>
</head><frameset cols="150, *" id="fs1">
<frame src="left_main.php" name="left" frameborder="1">
<frame src="right_main.php" name="right" frameborder="1">
</frameset>
</html>
答
比方说,你的iframe有,你可以使用一个选择。
var iframe = document.querySelector('#iframe'),
doc = iframe.contentDocument || iframe.contentWindow.document;
然后,您可以使用JS来查找iframe页面中的元素并从中获取内容。例如,如果在iframe的HTML你有<span class="my-email-selector">[email protected]</span>
,你可以做这样的事情:
var email = doc.querySelector('.my-email-selector').innerText;
现在将包含电子邮件。
通知的doc
变量是document
类型,因此它应该有所有的常规文件的方法(location
,querySelectot[All]
等)
编辑:既然你有frame
秒且不iframe
s,而他们也有一个name
属性,它很容易访问它们:
var frame_left = window.frames['left'],
frame_right = window.frames['right'];
非常感谢。但是,你能帮我在这个特定的情况下选择一些关键吗?我更新了问题。 – crosseds
我已经更新了答案,应该为你工作 – casraf