教你如何在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 相关文章推荐
js 省地市级联选择
Feb 07 Javascript
jquery checkbox全选、取消全选实现代码
Mar 05 Javascript
Js获取事件对象代码
Aug 05 Javascript
js中parseFloat(参数1,参数2)定义和用法及注意事项
Jan 27 Javascript
JavaScript语言核心数据类型和变量使用介绍
Aug 23 Javascript
String.prototype实现的一些javascript函数介绍
Nov 22 Javascript
JavaScript利用正则表达式去除日期中的-
Jun 09 Javascript
javascript实现切换td中的值
Dec 05 Javascript
JS判断字符串字节数并截取长度的方法
Mar 05 Javascript
jQuery插件echarts实现的多折线图效果示例【附demo源码下载】
Mar 04 Javascript
微信小程序授权登录解决方案的代码实例(含未通过授权解决方案)
May 10 Javascript
js模拟F11页面全屏显示
Sep 17 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中数组元素升序、降序以及重新排序的函数
2013/06/20 PHP
PHP反射类ReflectionClass和ReflectionObject的使用方法
2013/11/13 PHP
Yii2设置默认控制器的两种方法
2017/05/19 PHP
6个常见的 PHP 安全性攻击实例和阻止方法
2020/12/16 PHP
远离JS灾难css灾难之 js私有函数和css选择器作为容器
2011/12/11 Javascript
基于JavaScript实现继承机制之构造函数+原型链混合方式的使用详解
2013/05/07 Javascript
固定网页背景图同时保持图片比例的思路代码
2013/08/15 Javascript
基于javascript实现文字无缝滚动效果
2016/03/22 Javascript
基于javascript bootstrap实现生日日期联动选择
2016/04/07 Javascript
Vue.js学习示例分享
2017/02/05 Javascript
jQuery实现淡入淡出的模态框
2017/02/09 Javascript
jQuery实现一个简单的验证码功能
2017/06/26 jQuery
js实现购物车功能
2018/06/12 Javascript
JavaScript实现的文本框placeholder提示文字功能示例
2018/07/25 Javascript
详解如何提升JSON.stringify()的性能
2019/06/12 Javascript
js前端如何写一个精确的倒计时代码
2019/10/25 Javascript
jQuery 选择器用法基础入门示例
2020/01/04 jQuery
微信小程序实现抖音播放效果的实例代码
2020/04/11 Javascript
有趣的JavaScript隐式类型转换操作实例分析
2020/05/02 Javascript
vue添加锚点,实现滚动页面时锚点添加相应的class操作
2020/08/10 Javascript
nodejs使用Sequelize框架操作数据库的实现
2020/10/21 NodeJs
[01:02:45]完美世界DOTA2联赛 LBZS vs Forest 第三场 11.07
2020/11/09 DOTA
Python实现备份文件实例
2014/09/16 Python
TensorFlow安装及jupyter notebook配置方法
2017/09/08 Python
Python实现html转换为pdf报告(生成pdf报告)功能示例
2019/05/04 Python
python绘图模块matplotlib示例详解
2019/07/26 Python
python3实现mysql导出excel的方法
2019/07/31 Python
python自动发微信监控报警
2019/09/06 Python
python中加背景音乐如何操作
2020/07/19 Python
13个Pandas实用技巧,助你提高开发效率
2020/08/19 Python
通用C#笔试题附答案
2016/11/26 面试题
社会实践活动总结范文
2014/07/03 职场文书
学校消防安全责任书
2014/07/23 职场文书
店铺转让协议书
2015/01/29 职场文书
辞职报告(范文三篇)
2019/08/27 职场文书
QT连接MYSQL数据库的详细步骤
2021/07/07 MySQL