在没有jquery库的情况下使用jQuery hover?

Zen*_*00k -2 javascript jquery

有没有办法使用以下代码:

$(document).ready(function () {

    $('sd').hover(function() {
      $(this).addClass('a');
    }, function() {
      $(this).removeClass('a');
    });
});
Run Code Online (Sandbox Code Playgroud)

不在我的代码中包含jquery文件?例如,有没有办法用纯JavaScript做同样的事情?

Fra*_*bot 14

当然,从这个答案修改:使用JavaScript更改元素的类

window.onload = function() {
    var elements = document.getElementsByTagName('sd');
    for (var i in elements) {
        if (!elements.hasOwnProperty(i)) continue;
        elements[i].addEventListener( 'mouseover', function() {
            this.className += 'a';
        }
        elements[i].addEventListener( 'mouseout', function() {
            this.className = this.className.replace( /(?:^|\s)a(?!\S)/g , '' );
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

  • 我应该刚刚粘贴jquery源代码作为答案. (3认同)
  • 你说的方式,我以为你指的是一些我从未听说过的新js库.不应该那样谷歌搜索. (3认同)
  • +1 偶数 window.onload != $(document).ready() (2认同)
  • 但是,每次在页面上的任何**被鼠标悬停时,"全局"鼠标悬停都会产生函数调用.那太糟糕了. (2认同)