一个元素存在时立即触发事件的脚本?

我正在尝试编写一个Greasemonkey脚本来实现Facebook中的一些任务,比如隐藏新闻等。

问题是:我有一个ID到DOM中尚未存在的元素。 它是点击post的箭头图标时出现的小盒子。

如何通过jQuery创建一个事件处理程序,一旦元素存在就会触发它?

这是一个常见问题。 您可以使用waitForKeyElements()实用程序对AJAXed-in元素进行操作。 (例如,请参阅“关于AJAX请求的Fire Greasemonkey脚本” 。)

我不确定你在“点击post的箭头图标时出现的小盒子”是什么意思,但一般来说,你会:

  1. 确保你的脚本有jQuery。 将其添加到元数据部分 ,如果它已经存在:

     // @require http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js 

  2. waitForKeyElements -in waitForKeyElements

     // @require https://gist.github.com/raw/2625891/waitForKeyElements.js 

  3. 编写处理函数并激活它:

     function hideTheNews (jNode) { //***** YOUR CODE HERE ***** jNode.hide (); // For example } waitForKeyElements ("*APPROPRIATE jQuery SELECTOR*", hideTheNews);