教你如何在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 相关文章推荐
Hutia 的 JS 代码集
Oct 24 Javascript
javascript Window及document对象详细整理
Jan 12 Javascript
javascript对select标签的控制(option选项/select)
Jan 31 Javascript
js表单验证实例讲解
Mar 31 Javascript
Angular的MVC和作用域
Dec 26 Javascript
利用iscroll4实现轮播图效果实例代码
Jan 11 Javascript
Bootstrap modal 多弹窗之叠加显示不出弹窗问题的解决方案
Feb 23 Javascript
Angular简单验证功能示例
Dec 22 Javascript
vue拦截器实现统一token,并兼容IE9验证功能
Apr 26 Javascript
vue中v-model的应用及使用详解
Jun 27 Javascript
JS操作字符串转数字的常见方法示例
Oct 29 Javascript
vue-element-admin 菜单标签失效的解决方式
Nov 12 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中$_REQUEST、$_POST、$_GET的区别和联系小结
2011/11/23 PHP
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
2013/08/15 PHP
PHP set_error_handler()函数使用详解(示例)
2013/11/12 PHP
[原创]php获取数组中键值最大数组项的索引值
2015/03/17 PHP
mysql查找删除重复数据并只保留一条实例详解
2016/09/24 PHP
PHP处理Ajax请求与Ajax跨域问题
2017/02/13 PHP
Windows平台实现PHP连接SQL Server2008的方法
2017/07/26 PHP
jquery 经典动画菜单效果代码
2010/01/26 Javascript
jquery判断浏览器类型的代码
2012/11/05 Javascript
jquery ui dialog实现弹窗特效的思路及代码
2013/08/03 Javascript
JavaScript等比例缩放图片控制超出范围的图片
2013/08/06 Javascript
对于this和$(this)的个人理解
2013/09/08 Javascript
angularjs中的单元测试实例
2014/12/06 Javascript
javascript中parseInt()函数的定义和用法分析
2014/12/20 Javascript
JS对字符串编码的几种方式使用指南
2015/05/14 Javascript
自己动手制作基于jQuery的Web页面加载进度条插件
2016/06/03 Javascript
jQuery插件扩展测试实例
2016/06/21 Javascript
Javascript中apply、call、bind的巧妙使用
2016/08/18 Javascript
form表单转Json提交的方法(推荐)
2016/09/23 Javascript
微信小程序 触控事件详细介绍
2016/10/17 Javascript
详解Nodejs的timers模块
2016/12/22 NodeJs
xmlplus组件设计系列之选项卡(Tabbar)(5)
2017/05/03 Javascript
基于vue实现swipe分页组件实例
2017/05/25 Javascript
微信小程序ibeacon三点定位详解
2018/10/31 Javascript
js实现提交前对列表数据的增删改查
2020/01/16 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
python 将md5转为16字节的方法
2018/05/29 Python
利用python画出折线图
2018/07/26 Python
python各类经纬度转换的实例代码
2019/08/08 Python
python脚本实现音频m4a格式转成MP3格式的实例代码
2019/10/09 Python
Python3.7安装pyaudio教程解析
2020/07/24 Python
matplotlib bar()实现百分比堆积柱状图
2021/02/24 Python
新闻专业毕业生英文求职信
2014/03/19 职场文书
平凡的世界读书笔记
2015/06/25 职场文书
详解Html5项目适配系统深色模式方案总结
2021/04/14 HTML / CSS