Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在ES6中转换jQuery?_Javascript_Jquery_Ecmascript 6 - Fatal编程技术网

Javascript 如何在ES6中转换jQuery?

Javascript 如何在ES6中转换jQuery?,javascript,jquery,ecmascript-6,Javascript,Jquery,Ecmascript 6,我正在做一个项目,他们要求我不要使用jQuery,因为ES6似乎可以完全取代jQuery 我为在向下滚动时隐藏导航栏编写了这段代码,你知道如何在ES6中转换它吗 $(document).ready(function () { 'use strict'; var c, currentScrollTop = 0, navbar = $('nav'); $(window).scroll(function () { var a = $(window).scrollTop(); var b

我正在做一个项目,他们要求我不要使用jQuery,因为ES6似乎可以完全取代jQuery

我为在向下滚动时隐藏导航栏编写了这段代码,你知道如何在ES6中转换它吗

$(document).ready(function () {

'use strict';

var c, currentScrollTop = 0,
navbar = $('nav');

$(window).scroll(function () {
  var a = $(window).scrollTop();
  var b = navbar.height();

  currentScrollTop = a;

  if (c < currentScrollTop && a > b + b) {
    navbar.addClass("scrollUp");
  } else if (c > currentScrollTop && !(a <= b)) {
    navbar.removeClass("scrollUp");
  }
  c = currentScrollTop;
});
});
$(文档).ready(函数(){
"严格使用",;
变量c,currentScrollTop=0,
导航条=$('nav');
$(窗口)。滚动(函数(){
var a=$(window.scrollTop();
var b=导航条高度();
currentScrollTop=a;
如果(cb+b){
navbar.addClass(“scrollUp”);
}否则如果(c>currentScrollTop&&!(a您可以执行
$(窗口)。使用
窗口滚动
。addEventListener('scroll',function(){-

document.documentElement.scrollTop


您可以使用dom节点
.classList
来修改类

,这更多地与HTML5有关,而不是与ES6有关

下面仍然使用ES5,但没有使用jQuery

无论如何,这些变化并不是很大,看看下面。如果你想让下面的内容更像ES6,那么
var
,可以变成
let
&
const
函数(){
可以变成
()=>{
,除非你想要另一个
这个

var c,currentScrollTop=0,
navbar=document.querySelector('nav');
window.addEventListener(“滚动”),函数(){
var a=window.scrollY;
var b=导航条。客户端高度;
currentScrollTop=a;
如果(cb+b){
navbar.classList.add(“scrollUp”);

}如果(c>currentScrollTop&&!(一个完全不同的…我们在这里谈论的是一个库和一个新的语言规范。ES6(ECMAScript 2015)是一个包含语法更新的JavaScript版本,如和。JQuery是一个用JavaScript编写的开发库/框架。说ES6可以替换JQuery与说vanilla JS可以替换JQuery是一样的。从技术上讲,断言不是错误的,但它首先会破坏使用JQuery的目的。只需应用普通的JavaScript我看不出它有多大的优势。在这样的缩放速度下是不明显的…你不用加载jQuery?而不用
$(窗口)。滚动(…
使用
窗口。addEventListener('scroll…