教你如何在Node.js中使用jQuery


Posted in Javascript onAugust 28, 2016

想要在NodeJs中使用jQuery?

首先,我们得安装jquery, npm install jquery 。安装后的版本是 3.1.0

接着,第一感觉我们会使用 var $ = require('jquery') 。

将以下代码保存为app.js

var $ = require('jquery')

$("body").append("<div>TEST</div>");
console.log($("body").html());

运行 node app.js 。提示错误:

Error: jQuery requires a window with a document

那么我们该怎么做呢?

在 npm的jquery安装包首页 ,我们看到可以使用 jsdom 进行模拟一个document。

require("jsdom").env("", function(err, window) {
  if (err) {
    console.error(err);
    return;
  }
  var $ = require("jquery")(window);
  $("body").append("<div>TEST</div>");
  console.log($("body").html());
});

运行,结果OK。

上面的代码,有一个让我不太舒服的地方就是要在回调函数中进行操作。那么我们如何做才可以不在回调函数中进行引入jquery呢?

var $ = require('jquery')(require("jsdom").jsdom().defaultView);
$("body").append("<div>TEST</div>");
console.log($("body").html());

一样运行OK。

以上就是本文给大家分享的全部内容了,希望对大家学习node.js能够有所帮助

Javascript 相关文章推荐
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
Aug 28 Javascript
修改jquery.lazyload.js实现页面延迟载入
Dec 22 Javascript
jQuery 选择表格(table)里的行和列及改变简单样式
Dec 15 Javascript
Node.js模拟浏览器文件上传示例
Mar 26 Javascript
JavaScript中this的用法实例分析
Dec 19 Javascript
详解从angular-cli:1.0.0-beta.28.3升级到@angular/cli:1.0.0
May 22 Javascript
vue使用stompjs实现mqtt消息推送通知
Jun 22 Javascript
jQuery中的$是什么意思及 $. 和 $().的区别
Apr 20 jQuery
angularjs中判断ng-repeat是否迭代完的实例
Sep 12 Javascript
jQuery无冲突模式详解
Jan 17 jQuery
jQuery内容选择器与表单选择器实例分析
Jun 28 jQuery
如何使用 JavaScript 操作浏览器历史记录 API
Nov 24 Javascript
分享JavaScript监听全部Ajax请求事件的方法
Aug 28 #Javascript
Node.js 日志处理模块log4js
Aug 28 #Javascript
node.js中 stream使用教程
Aug 28 #Javascript
ionic组件ion-tabs选项卡切换效果实例
Aug 27 #Javascript
郁闷!ionic中获取ng-model绑定的值为undefined如何解决
Aug 27 #Javascript
ionic实现带字的toggle滑动组件
Aug 27 #Javascript
ionic实现可滑动的tab选项卡切换效果
Apr 15 #Javascript
You might like
PHP集成FCK的函数代码
2008/09/27 PHP
PHP处理bmp格式图片的方法分析
2017/07/04 PHP
csdn 博客中实现运行代码功能实现
2009/08/29 Javascript
offsetHeight在OnLoad中获取为0的现象
2013/07/22 Javascript
jQuery :first选择器使用介绍
2013/08/09 Javascript
浅谈JS继承_寄生式继承 &amp; 寄生组合式继承
2016/08/16 Javascript
JavaScript学习笔记整理_关于表达式和语句
2016/09/19 Javascript
JavaScript实现使用Canvas绘制图形的基本教程
2016/10/27 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
smartupload实现文件上传时获取表单数据(推荐)
2016/12/12 Javascript
Bootstrap源码解读媒体对象、列表组和面板(10)
2016/12/26 Javascript
AngularJS中的按需加载ocLazyLoad示例
2017/01/11 Javascript
从setTimeout看js函数执行过程
2017/12/19 Javascript
vue element table 表格请求后台排序的方法
2018/09/28 Javascript
vue组件开发props验证的实现
2019/02/12 Javascript
Node 使用express-http-proxy 做api网关的实现
2020/10/15 Javascript
基于Cesium绘制抛物弧线
2020/11/18 Javascript
[32:30]夜魇凡尔赛茶话会 第一期01:谁是卧底
2021/03/11 DOTA
图文详解WinPE下安装Python
2016/05/17 Python
Django跨域请求问题的解决方法示例
2018/06/16 Python
利用python画出折线图
2018/07/26 Python
利用python将图片版PDF转文字版PDF
2019/05/03 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
Python魔术方法专题
2020/06/19 Python
django教程如何自学
2020/07/31 Python
Ariat官网:美国马靴和服装品牌
2019/12/16 全球购物
匡威俄罗斯官网:Converse俄罗斯
2020/05/09 全球购物
酒店总经理工作职责
2013/12/13 职场文书
班级安全教育实施方案
2014/02/23 职场文书
护理人员的自我评价分享
2014/03/15 职场文书
幼儿园师德演讲稿
2014/05/06 职场文书
建设办主任四风问题整改思路和措施
2014/09/20 职场文书
担保书范文
2019/07/09 职场文书
导游词之襄阳古城
2019/09/27 职场文书
Mysql中一千万条数据怎么快速查询
2021/12/06 MySQL
mysql的Buffer Pool存储及原理
2022/04/02 MySQL