我正在为特定网站Lernu.net编写chrome扩展程序,当用户点击某个字词时,该网站会生成新的DOM元素。
新的div DOM包含id为" v0"的单词的翻译,每次用户点击单词时都会生成一个新单词
这就是div的样子:
<div class="vortarobobelo" id="bobelo0.889891296857968" title="Duoble alklaku por reteni la slipeton." style="z-index: 10000000; display: block; width: 20em; top: 410px; visibility: visible; left: 391px;">
<div class="superbiblenhavo">
<div class="vorto" id="v0">
<h3>
<strong>malbono</strong> (mal·bon·o ← bon·a)
</h3>
<div id="en25964">evil, bad</div>
</div>
</div>
<div class="fermilo1" onclick="this.parentNode.gepatro.superbibl = 0; ForigiBobelon(this.parentNode);">X</div>
<div class="fermilo2" onclick="this.parentNode.gepatro.superbibl = 0; ForigiBobelon(this.parentNode);">X</div>
<div class="fermilo3" onclick="this.parentNode.gepatro.superbibl = 0; ForigiBobelon(this.parentNode);">X</div>
<div class="fermilo4" onclick="this.parentNode.gepatro.superbibl = 0; ForigiBobelon(this.parentNode);">X</div>
这是我对javascript的所作所为
document.onclick = get_content()
function get_content(){
var element = document.getElementById("v0"); // gets <div id="v0" and assign to var element
var text = element.innerText || element.textContent; /* gets the text in div. the || serves as optional argument
then the second arugment is evaluted */
console.log(text);
return text;
};
我遇到两个问题:
1。该功能在加载网页时自动触发,但我只希望它在用户点击带有css标签的变量时运行
样式=&#34; cursor:help;&#34;
2。我得到了一个XHR响应函数,但我真正想要的是一个包含单词和翻译的json对象。
XHR finished loading: GET "http://en.lernu.net/cgi-bin/serchi.pl?modelo=malbonon&delingvo=eo&allingvo=…=0&starto=0&bobeloid=bobelo0.889891296857968&dishaki=true&hazardo=bNL4XQNJ".
我可以在控制台日志中看到它返回一个响应,但我只能在netword选项卡下的控制台中看到它。
输入&#34;文字&#34;在console中返回undefined,get_content()也是如此。