js代码

原生js实现拖拽排序

走远了吗. 提交于 2019-12-27 02:28:24
思路 –拖动元素得到位置确定元素对应的数据,在数组中位置– 代码部分 css样式 * { margin : 0 ; padding : 0 ; } #drag { width : 300px ; } .de-p { font-size : 20px ; line-height : 80px ; text-align : center ; height : 80px ; width : 80px ; border : 1px solid #e2e2e2 ; background-color : rgba ( 16, 15, 245,.5 ) ; cursor : pointer ; color : antiquewhite ; float : left ; } ._absolute { position : absolute ; opacity : 0.3 ; } ._relative { position : relative ; } html <div id= "drag" ></div> js拖拽对象实例化 var list = [ { name : '1' } , { name : '2' } , { name : '3' } , { name : '4' } , { name : '5' } , { name : '6' } , { name : '7' } , {

某某文学网站小说爬虫

北战南征 提交于 2019-12-27 01:00:38
这个爬虫来自于一个问答贴: 看雪论坛: https://bbs.pediy.com/thread-256306.htm 吾爱破解: https://www.52pojie.cn/thread-1075559-1-1.html 发帖人是一个人。 感谢大佬提供技术支持: 切丝怕怕: https://bbs.pediy.com/user-733836.htm 这大概是我遇见反爬做的,最,那啥的小说网站了,网站如下: https://www.sztjgold.com/chapter.html?2#mybookid=83751&bookid=96158&chapterid=42616795 说几点: 一, 首先需要知道bytes类型是可遍历的 ,emmmm,我是才知道。 二,python里 ord和chr的使用 ,我个人好像是第一次使用,尴尬 说一下反爬: 1,小说内容不在源码里,所以无法直接获取; 2,小说内容经过加密和base64编码后,放在一个html页面,这个页面返回的是杂乱的js,需要格式化 3,这个html页面可以直接拼接,也可以按照源码里比较简单的js来改写成python语言生成 如图: 查看源码时,有如下生成链接的js,url_get_data就是对应的html链接 js需要的参数都在 https://www.sztjgold.com/chapter.html?2

js常用工具类.

梦想与她 提交于 2019-12-27 00:33:20
一些js的工具类 复制代码 /** * Created by sevennight on 15-1-31. * js常用工具类 */ /** * 方法作用:【格式化时间】 * 使用方法 * 示例: * 使用方式一: * var now = new Date(); * var nowStr = now.dateFormat("yyyy-MM-dd hh:mm:ss"); * 使用方式二: * new Date().dateFormat("yyyy年MM月dd日"); * new Date().dateFormat("MM/dd/yyyy"); * new Date().dateFormat("yyyyMMdd"); * new Date().dateFormat("yyyy-MM-dd hh:mm:ss"); * @param format {date} 传入要格式化的日期类型 * @returns {2015-01-31 16:30:00} */ Date.prototype.dateFormat = function (format){ var o = { "M+" : this.getMonth()+1, //month "d+" : this.getDate(), //day "h+" : this.getHours(), //hour "m+" : this

JS原生方法实现jQuery的ready()

瘦欲@ 提交于 2019-12-26 23:59:59
浏览器加载页面的顺序: 1、 解析HTML结构 2、 加载外部脚本和样式表文件 3、 解析并执行脚本代码 4、 构造HTML DOM模型==ready() 5、 加载图片等组件 6、 页面加载完毕==onload() ready事件是在DOM模型构造完毕时触发 load事件是在页面加载完毕后触发 function ready(fn){ if(document.addEventListener) { document.addEventListener('DOMContentLoaded', function() { //注销事件, 避免反复触发 document.removeEventListener('DOMContentLoaded',arguments.callee, false); fn(); //执行函数 }, false); }else if(document.attachEvent) { //IE document.attachEvent('onreadystatechange', function() { if(document.readyState == 'complete') { document.detachEvent('onreadystatechange', arguments.callee); fn(); //函数执行 } }); } }; ready(

js函数作用域

徘徊边缘 提交于 2019-12-26 23:46:24
调用函数时,创建函数作用域,函数执行完毕后,函数作用域销毁 //变量提前 //并不是赋值提前,变量a提前此时a的值为undefined, //而同名的函数提前,将会覆盖变量a,使a的值成为为函数。 var a = 10 ; function fun ( ) { var a = "我是fun函数中的变量a" ; var b = 20 ; //console.log("a = "+a); function fun2 ( ) { console . log ( "a = " + window . a ) ; } fun2 ( ) ; } //fun(); //console.log("b = "+b); 使用var关键字声明的变量,会在函数中所有的代码执行之前被声明 函数声明也会在函数中所有的代码执行之前执行 也可以这么认为在声明变量和显示声明函数的时候,函数的值会覆盖变量。 对于变量覆盖:只是针对重新声明变量。 同一个作用域中,会进行值得覆盖,函数覆盖变量;变量覆盖变量;函数覆盖函数。 .作用域嵌套 当一个作用域嵌套在另一个块或函数中,就产生了作用域嵌套。 function fun ( 1 ) { var a = b ++ ; function fun1 ( c ) { console . log ( a , b , c ) ; } fun1 ( c ++ ) ; } fun ( 1

微信分享网页之自定义标题、描述、访问连接和图片(亲测通过)

核能气质少年 提交于 2019-12-26 16:27:40
个人亲测通过 用微信打开一个网页,选择右上角的“发送给朋友”后,收到的消息是这样的: 而为了推广效果,我们更希望能自定义标题、描述、访问连接和图片,效果如下图: 下面介绍下怎样来实现这个功能 准备工作 需要一个认证的微信公众号,一定要确定认证 在登录微信公众平台https://mp.weixin.qq.com 在公众号设置–>功能设置,填写设置Js接口安全域名 Js安全域名是需要把微信提供的文件,放在指定域名或者目录下面可以访问的。 1,引用js jquery-1.8.3.min.js https://res.wx.qq.com/open/js/jweixin-1.0.0.js 注意,如果自己的域名模式是https模式,要使用https模式,不然会出现mixed content block,微信js不会执行 JS-sdk中的方法要在获取signature之后再执行,不然有可能会执行错误等,同时分享的调用要在wx.ready方法体里面执行,即微信配置都okay的情况下在执行。 2,页面添加js代码 <script type="application/javascript"> var wxParam = { title: "title",// 分享标题(自行修改) desc: 'desc', // 分享描述(自行修改) link: 'link', // 分享链接

vue

僤鯓⒐⒋嵵緔 提交于 2019-12-26 12:40:27
因浏览器缓存原因导致vue 打包的文件 导致偶尔会出现不能即使更新最新代码。因此在打包的文件名中添加一个版本号以便浏览器能区分。 解决方法:找到webpack .prod.conf.js 1.定义版本变量: const Version = new Date().getTime(); // 这里使用的是时间戳 来区分 ,也可以自己定义成别的如:1.1 2.修改要生成的js和css文件的配置项,把刚刚声明的版本拼接进要生成的文件名中; output: { path: config.build.assetsRoot, filename: utils.assetsPath('js/[name].[chunkhash].' + Version + '.js'), chunkFilename: utils.assetsPath('js/[id].[chunkhash].' + Version + '.js') }, new ExtractTextPlugin({ filename: utils.assetsPath('css/[name].[contenthash]'+Version+'.css'), allChunks: true }), 来源: CSDN 作者: qq_15551663 链接: https://blog.csdn.net/qq_15551663/article

编写测试js文件的步骤

蹲街弑〆低调 提交于 2019-12-26 08:28:50
编写测试js文件的步骤 // 定义创建细则套件 describe ( "UnitTest:MainController" , function ( ) { //定义细则 it ( "index method" , function ( ) { //测试代码 expect ( true ) . toBe ( true ) ; } ) } ) 编写测试js文件的步骤 1 )使用describe函数把相关细则分组(测试命名成可读英文) describe ( specName , fn ) :创建细则套件 describe ( ‘UnitTest : MainController’ , function ( ) { } ) describe ( ‘UnitTest : AccountController’ , function ( ) { describe ( ‘index method’ , function ( ) { . . . } ) } ) 2 ) it ( specDesc , fn ) : 定义细则,包含若干测试预期 it ( ‘contains a passing spec’ , function ( ) { . . . } ) ; 3 ) expect ( val1 ) . toBe ( val2 ) :创建测试预期,val1真实值, toBe ( ) 匹配器函数

gulp使用心得

╄→гoц情女王★ 提交于 2019-12-26 07:26:12
本文假设你之前没有用过任何任务脚本(task runner)和命令行工具,一步步教你上手Gulp。不要怕,它其实很简单,我会分为五步向你介绍gulp并帮助你完成一些惊人的事情。那就直接开始吧。 第一步:安装Node 首先,最基本也最重要的是,我们需要搭建node环境。访问 http://nodejs.org ,然后点击大大的绿色的 install 按钮,下载完成后直接运行程序,就一切准备就绪。 npm 会随着安装包一起安装,稍后会用到它。 第二步:使用命令行 也许现在你还不是很了解什么是命令行——OSX中的终端(Terminal),windows中的命令提示符(Command Prompt),但很快你就会知道。它看起来没那么简单,但一旦掌握了它的窍门,就可以很方便的执行很多命令行程序,比如Sass,Yeoman和Git等,这些都是非常有用的工具。 如果你很熟悉命令行,直接跳到步骤四。 为了确保Node已经正确安装,我们执行几个简单的命令。 node -v 回车(Enter),如果正确安装的话,你会看到所安装的Node的版本号,接下来看看npm。 npm -v 这同样能得到npm的版本号。 如果这两行命令没有得到返回,可能node就没有安装正确,尝试重启下命令行工具,如果还不行的话,只能回到第一步进行重装。 第三步:定位到项目 现在,我们已经大致了解了命令行并且知道如何简单使用它

JS中的this指向问题

折月煮酒 提交于 2019-12-26 07:12:47
原博客:https://www.cnblogs.com/pssp/p/5216085.html 首先必须要说的是, this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定this到底指向谁 , 实际上this的最终指向的是那个调用它的对象( 这句话有些问题,后面会解释为什么会有问题,虽然网上大部分的文章都是这样说的,虽然在很多情况下那样去理解不会出什么问题,但是实际上那样理解是不准确的,所以在你理解this的时候会有种琢磨不透的感觉 ) ,那么接下来我会深入的探讨这个问题。   为什么要学习this?如果你学过面向对象编程,那你肯定知道干什么用的,如果你没有学过,那么暂时可以不用看这篇文章,当然如果你有兴趣也可以看看,毕竟这是js中必须要掌握的东西。 例子1: function a(){ var user = "追梦子"; console.log(this.user); //undefined console.log(this); //Window } a(); 按照我们上面说的this最终指向的是调用它的对象,这里的函数a实际是被Window对象所点出来的,下面的代码就可以证明。 function a(){ var user = "追梦子"; console.log(this.user); //undefined console.log(this);  /