0

我想在 img 标签内添加一个监听器。

'<div id="111" style="height:20px; width:49.9%; float:left">'+
  '<span style="float: right; margin-right: 25px; margin-top: 4px;">'+
  '<img id= "',
  downloadLeft_,'" style="position:absolute;" src="/public/images/excel.gif"></span></div>'

  goog.events.listen(goog.dom.getElement(downloadLeft_), goog.events.EventType.CLICK, function() {

  });

所以我得到了img id并将其放入goog.events.listen。但是我得到
goog.dom.getElement(downloadLeft_) 为空。为什么 getElement 为空?如何在 img 标签内添加监听器?

4

1 回答 1

1

要添加侦听器,您必须具有对 DOM 节点的引用 - 而不是字符串。这是一个例子:

// Get a element to set the innerHTML contents on
var div = document.createElement('div');

// Add html created by strings
div.innerHTML = '<span style="float: right; margin-right: 25px; margin-top: 4px;">'+
    '<img id= "' + downloadLeft_ + '" style="position:absolute;" ' +
    'src="/public/images/excel.gif"></span>';

// Add the div to the document
document.documentElement.appendChild(div);

// Get a reference to the image element
var img = document.getElementById(downloadLeft_);

// Add listener
goog.events.listen(goog.dom.getElement(downloadLeft_),
    goog.events.EventType.CLICK, function() {
  //event listener code
});
于 2013-07-26T13:32:07.093 回答