Firefox没有针对动态创建的元素触发内联事件?

时间:2016-01-02 18:28:31

标签: javascript jquery html firefox

解决:

Firefox在事件对象上没有属性srcElement。我正在使用$(event.target),并且所有内容都在浏览器中保持一致。

简而言之,这个代码块适用于除Firefox之外的所有主流浏览器

$('<div onclick="someFunction()"></div>').appendTo('body');

我理解在这个例子中,事件可以很容易地使用jQuery的.on()或.click()绑定,但在更复杂的例子中,我同时创建3或4个嵌套元素,这是很麻烦的至少可以说。

有谁知道为什么会出现这种情况,以及如何在不明确绑定脚本中的事件的情况下修复它?

完整代码:

oc.twitch.twitchWrapper = function(streamName, streamDisplayName) {
    return $('<div class="twitch-inline-wrapper">\
        <div class="twitch-above-controls uk-clearfix" ondblclick="oc.twitch.doubleClickResize(event)">\
            <div class="uk-float-left stream-name">' + ( streamDisplayName || streamName ) + '</div>\
            <a onclick="oc.twitch.closeStream(event)" class="uk-float-right x"></a>\
            <a class="timer" onmouseover="oc.twitch.setTimerTooltip(event)">0:00</a>\
        </div>\
        <div class="twitch-inline-container"></div>\
    </div>');
}

0 个答案:

没有答案