Javascript - 当用户点击Facebook中的图像时如何收听?

时间:2013-03-02 15:08:12

标签: javascript facebook listener

我想知道当用户点击facebook newsfeed上的图像来执行某些操作时触发功能的有效方法。

我可以为每个图像添加一个监听器,但这不是很有效。还有别的吗?

1 个答案:

答案 0 :(得分:0)

这样的事情:http://jsfiddle.net/c24w/DJ2ax/4/

<强> HTML

<div id="newsfeed">
    <img src="http://i46.tinypic.com/2cos8hw.png" id="1">
    <img src="http://i46.tinypic.com/2cos8hw.png" id="2">
    <img src="http://i46.tinypic.com/2cos8hw.png" id="3">
    <div><a href="#">Something else clickable</a></div>
</div>

<强>的JavaScript

var newsfeed = document.getElementById('newsfeed');

newsfeed.onclick = function handleNewsfeedClick(e) {
    var el = e.srcElement;
    if (el.tagName === 'IMG') {
        console.log('Clicked image ' + el.id);
    }
};

这样做是将点击事件监听器附加到新闻源。单击新闻源的子元素时,事件将传播到新闻源并被其单击侦听器捕获。然后检查点击事件的来源是否是图像。

输出进入浏览器的控制台。 (我在Chrome中简要测试了一下。)