Javascript 无法获取已单击元素的url和文本

Javascript 无法获取已单击元素的url和文本,javascript,jquery,html,Javascript,Jquery,Html,我正在开发一个小的firefox扩展,它需要检测每个点击的url,然后保存url和相应的文本。换句话说,我想存储所有的url和相应的文本,这会导致页面更改或某种网络活动 我正在使用的jquery代码 $('*').click(function(){ var url = this.href; if(url!=undefined){ console.log(url+ " " + this.text); } }); 这段代码在大多数情况下都能正常工作,但当

我正在开发一个小的firefox扩展,它需要检测每个点击的url,然后保存url和相应的文本。换句话说,我想存储所有的url和相应的文本,这会导致页面更改或某种网络活动

我正在使用的jquery代码

$('*').click(function(){
    var url = this.href;
    if(url!=undefined){
        console.log(url+ "   " + this.text);
    }
});
这段代码在大多数情况下都能正常工作,但当我试图获取Evernote、Box.com、Dropbox等网站上的链接时,它根本不起作用。我无法弄清原因。例如,在box.com上,如果我单击任何文件,上面的代码都无法返回url和文本,Dropbox中的情况也非常类似

我使用的代码是否有一些限制?任何帮助/想法都将不胜感激

编辑:

对于一个box文件,在Firebug检查元素时,我得到

<a data-validate="filename not_empty_item_type" data-behavior="edit_in_place" data-item_type="folder" data-item_id="1816357023" data-field="name" data-url="/index.php?rm=box_files_update_item_info" class="item_link item_name_text edit_in_place item_name dnd" href="/files/0/f/1816357023/public_test">public_test</a>

它确实有一个“href”

一个测试它的盒子


当我在box.com中点击页面顶部的更新(带有一个全局图像)和文件(带有一个文件夹图像)链接时,代码运行得非常好。如何加载脚本?我的意思是,也许这是一个显而易见的答案,但您的代码使用Jquery。很多网站都在使用它,所以你的代码可以正常工作。但例如dropbox不使用它,因此它永远不会工作

编辑:

将脚本放入文档中。就绪功能。我试过这个,它让我得到了网址

$( document ).ready(function() {
如果遇到一些问题,尝试使用noConflict模式,如中所示

 jQuery( document ).ready(function() {

更新2

我是如何找到它的: 我只是使用我的浏览器控制台。在“执行”脚本时,它返回了一个错误

TypeError: Cannot read property 'click' of null

这意味着DOM还没有准备好。或者,我还没有真正测试过它。可能是Jquery存在冲突。因此,使用Jquery而不是$

给我一个指向某个Box.com示例的链接,我可以为您找出答案。在那些无法使用Jquery的站点上,元素是否有
href
?或者它们的单击功能是由JavaScript根据另一个属性触发的?请确保它们具有hreg属性,它们可能正在使用onclick或类似的东西。为什么要使用
*
?您将为您单击的元素层次结构中的每个父元素触发一个事件,使用锚定标记
$(“a”)。单击…
@Buzinas我已经更新了问题。上面的脚本是firefox扩展的内容脚本,我正在为每个页面加载它。我自己也为每个页面加载jquery库。所以,不依赖于网站是否使用jquery。您能确定,只需在页面加载时发出一个警报,即可触发jquery事件吗?我确信jquery已经加载,因为当我在box.com中点击页面顶部的更新(带有全局图像)和文件(带有文件夹图像)链接时,上面的代码工作得非常好。当在文件夹或文件上单击鼠标时,它不起作用。谢谢,它在box.com上运行得非常好。但是像dropbox.com、evernote.com这样的网站仍然存在这个问题。我把每一箱都贴在上面了。但在evernote中,没有href,但dropbox确实有。另外,你能告诉我你是如何解决这个问题的吗?出于一些有趣的原因,当我在我的浏览器中运行时,代码运行得很好,但是当我通过firefox扩展运行它时,它对dropbox.com不起作用。