教你如何在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 相关文章推荐
function, new function, new Function之间的区别
Mar 08 Javascript
获取dom元素那些讨厌的位置封装代码
Jun 23 Javascript
jQuery解析json数据实例分析
Nov 24 Javascript
bootstrap实现弹窗和拖动效果
Jan 03 Javascript
详解AngularJS中的http拦截
Feb 09 Javascript
在IE8上JS实现combobox支持拼音检索功能
May 23 Javascript
bootstrap监听滚动实现头部跟随滚动
Nov 08 Javascript
JS定时器用法分析【时钟与菜单中的应用】
Dec 21 Javascript
javascriptvoid(0)含义以及与&quot;#&quot;的区别讲解
Jan 19 Javascript
JS实现计算小于非负数n的素数的数量算法示例
Feb 26 Javascript
Vue项目history模式下微信分享爬坑总结
Mar 29 Javascript
微信小程序自定义组件components(代码详解)
Oct 21 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
Zerg兵种介绍
2020/03/14 星际争霸
40个迹象表明你还是PHP菜鸟
2008/09/29 PHP
PHP中使用FFMPEG获取视频缩略图和视频总时长实例
2014/05/04 PHP
ThinkPHP分组下自定义标签库实例
2014/11/01 PHP
Yii2实现同时搜索多个字段的方法
2016/08/10 PHP
Linux下快速搭建php开发环境
2017/03/13 PHP
通过实例解析PHP数据类型转换方法
2020/07/11 PHP
学习js所必须要知道的一些
2007/03/07 Javascript
用RadioButten或CheckBox实现div的显示与隐藏
2013/09/21 Javascript
javascript模拟post提交隐藏地址栏的参数
2014/09/03 Javascript
JavaScript中的编码和解码函数
2017/02/15 Javascript
js实现模糊匹配功能
2017/02/15 Javascript
VueJS如何引入css或者less文件的一些坑
2017/04/25 Javascript
bootstrap daterangepicker双日历时间段选择控件详解
2017/06/15 Javascript
Vue 2.5.2下axios + express 本地请求404的解决方法
2018/02/21 Javascript
JS选取DOM元素常见操作方法实例分析
2018/12/10 Javascript
ES6之Proxy的get方法详解
2019/10/11 Javascript
Vue3.0中的monorepo管理模式的实现
2019/10/14 Javascript
jQuery实现本地存储
2020/12/22 jQuery
基于Python实现的扫雷游戏实例代码
2014/08/01 Python
python实现FTP服务器服务的方法
2017/04/11 Python
《与孩子一起学编程》python自测题
2018/05/27 Python
python实现将汉字保存成文本的方法
2018/11/16 Python
python使用Plotly绘图工具绘制气泡图
2019/04/01 Python
python 实现ping测试延迟的两种方法
2020/12/10 Python
网游商务专员求职信
2013/10/15 职场文书
致跳高运动员加油稿
2014/02/12 职场文书
2015年八一建军节活动总结
2015/03/20 职场文书
婚宴父亲致辞
2015/07/27 职场文书
如何书写授权委托书?
2019/06/25 职场文书
2019年鼓励无偿献血倡议书
2019/09/17 职场文书
python 中[0]*2与0*2的区别说明
2021/05/10 Python
Python实现byte转integer
2021/06/03 Python
redis使用不当导致应用卡死bug的过程解析
2021/07/01 Redis
redis调用二维码时的不断刷新排查分析
2022/04/01 Redis
vue2的 router在使用过程中遇到的一些问题
2022/04/13 Vue.js