Javascript:只有在存在body类时才执行函数

时间:2016-02-17 19:13:43

标签: javascript

我有一个像这样的身体类:

<body class="horizontal">

我尝试使用以下代码进行定位:

'use strict';

// Horizontal scrolling - Pure Javascript solution
// http://www.dte.web.id/2013/02/event-mouse-wheel.html
(function() {
if(document.body.className === 'horizontal') {
  alert('It exists');

  function scrollHorizontally(e) {
    e = window.event || e;
    var delta = Math.max(-1, Math.min(1, (e.wheelDelta || -e.detail)));
    // Scroll to the left or right in `document.documentElement` and `document.body`
    document.documentElement.scrollLeft -= (delta * 75); // Multiplied by 75
    document.body.scrollLeft -= (delta * 75); // Multiplied by 75
    e.preventDefault();
  }
  if (window.addEventListener) {
    window.addEventListener('mousewheel', scrollHorizontally, false); // IE9, Chrome, Safari, Opera
    window.addEventListener('DOMMouseScroll', scrollHorizontally, false); // Firefox
  } else {
    window.attachEvent('onmousewheel', scrollHorizontally); // IE 6/7/8
  }
};
})();

但这不起作用。 alert没有弹出。我想更喜欢纯粹的javascript解决方案,因为这不包括Jquery。

编辑:我取消注释水平滚动功能,然后它正在工作。因此脚本导致了问题。

整个脚本在正文的底部调用。

1 个答案:

答案 0 :(得分:-1)

just remove "'use strict';"它将有效see this