Welcome 微信登录

首页 / 脚本样式 / JavaScript

JavaScript的事件机制详解

JavaScript的事件机制详解

事件是将JavaScript脚本与网页联系在一起的主要方式,是JavaScript中最重要的主题之一,深入理解事件的工作机制以及它们对性能的影响至关重要。本文将详细探讨JavaScript的事件机制,并对比分析了浏览器之间的不同,具体内容包括事件流、事件处理程序绑定方式、事件对象等。如何理解事件?JavaScript与HTML之间的交互就是通过事件实现的。事件:用户或浏览器自身执行的某种动作,换言之,文档或浏览器发生的一些特定的交互瞬间。事件处理程序:又称...
js处理层级数据结构的方法小结

js处理层级数据结构的方法小结

开发者对复杂的数据结构的处理能力也是体现开发者水平的一个度量吧。。。最近发现自己对一些嵌套数据结构、层级数据结构的处理能力不大足。。。经常被这些把自己绕晕。。。严重影响开发效率。。。就稍微低总结了一下下。。。一、mongodb设计层级关系数据(这里主要说的是mongoose)①假设有这样的一个场景。某个文章下面有评论,每个评论可以被回复,每个回复又可以被回复...首先,我们知道,普通的一对多的关系,可以通过引用,populate操作找出相应的引用对象,如:...
javascript判断元素存在和判断元素存在于实时的dom中的方法

javascript判断元素存在和判断元素存在于实时的dom中的方法

今天(周六)下午我在公司加班时不知道要干什么,就打开公司的一个wordpress项目网站,想看下之前自己做的一个网页是否有问题。打开网站首页,我习惯性的打开了chrome的调试工具,然后鼠标开始滚动页面,然后问题就出来了:页面无法向下滚动,调试工具的console里报了好多undefined的错误。我马上意识到是我写的js代码错误的在首页被执行导致的问题,我的代码大致是这样:if ($("#a")) { // some code ... $("#b").d...
jQuery无刷新上传之uploadify简单代码

jQuery无刷新上传之uploadify简单代码

先简单的侃两句:貌似已经有两个月的时间没有写过文章了,不过仍会像以前那样每天至少有一至两个小时是泡在园子里看各位大神的文章。前些天在研究“ajax无刷新上传”方面的一些插件,用SWFUpload实现了无刷新上传的功能,不过个人觉得不是很完美。昨天在网上找到了一个叫做uploadify的jquery上传插件,看到园子里有几篇文章也是介绍这个插件的,心想何不用这个试试。不过园子里的这几篇文章用到的uploadify还是以前的旧版本uploadify-v2.1....
微信小程序 登陆流程详细介绍

微信小程序 登陆流程详细介绍

微信小程序 登陆流程1:session_key和openId是什么?session_key官方说明为:session_key是微信服务器生成的针对用户数据进行加密签名的密钥session_key的用途(1)对wx.getUserInfo()接口得到“用户信息中的密文”进行解密。(2)对它“稍作处理”,用作维护小程序的登录态。“稍微处理”大体为:(1)生成一个随机数(官方把他叫做3rd_session)(2)把这个随机数当session的key,sessio...
angularjs ocLazyLoad分步加载js文件实例

angularjs ocLazyLoad分步加载js文件实例

用angular有一段时间了,平日里只顾着写代码,没有注意到性能优化的问题,而今有时间,于是捋了捋,讲学习过程记录于此:问题描述:由于采用angular做了网页的单页面应用,需要一次性在主布局中将所有模块需要引用到的js都引入.对于比较小的项目,这是可行的,但是对于大的项目,一旦js文件较多,在页面首次加载时就引入所有js文件,无疑会延缓页面加载的速度,造成不良额用户体验.那么分布加载(按需加载)就显得很有必要了.<!DOCTYPE html>...
用原生js做单页应用

用原生js做单页应用

最近在公司接到一个需求,里面有一个三级跳转。类似于选择地址的时候,选择的顺序是:省份->市->区。如果分三个页面跳转,那么体验非常不好,如果引入其他框架做成单页应用,又比较麻烦。所以可以用js把这一块做成单页应用的样子。。。主要思路通过改变url的hash值,跳到相应模块。先把默认模块显示出来,其他模块隐藏,分别给三个模块定义三个hash值,点击默认模块的选项的时候,改变hash值,同时在window上监听hashchange事件,并作相应模块...
详谈JavaScript的闭包及应用

详谈JavaScript的闭包及应用

闭包真的是学过一遍又一遍,Js博大精深,每次学习都感觉有新的收获。相信在大家封装前端插件时,闭包是必不可少的。闭包的真正好处我个人认为除了封装还是封装,能带个我们私有方法,和调用上的灵活方便,也会使你的代码对外的对象保持干净整洁。进入正题维基百科这样定义了JS闭包:在计算机科学中,闭包(英语:Closure),又称词法闭包(Lexical Closure)或函数闭包(function closures),是引用了自由变量的函数。这个被引用的自由变量将和这个...
微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解

微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解

微信小程序 缓存关于本地缓存1.wx.setStorage(wx.setStorageSync)、wx.getStorage(wx.getStorageSync)、wx.clearStorage(wx.clearStorageSync)可以对本地缓存进行设置、获取和清理。本地缓存最大为10MB2.localStorage 是永久存储一、异步缓存wx.setStorage(OBJECT)将数据存储在本地缓存中指定的 key 中,会覆盖掉原来该 key 对应的...
浅析vue数据绑定

浅析vue数据绑定

前言:最近团队需要做一个分享,脚进脑子,不知如何分享。最后想着之前一直想研究一下 vue 源码,今天刚好 “借此机会” 研究一下。网上研究vue数据绑定的文章已经非常多了,但是自己写一遍,敲一遍demo和看别人的文章是完全不同的,so……搬运工来了目前数据绑定主要有以下三种实现方式:1. 脏值检查(angular.js) 轮询检测数据变化DOM事件,譬如用户输入文本,点击按钮等。( ng-click )XHR响应事件 ( $http )浏览器Locatio...
vue双向数据绑定原理探究(附demo)

vue双向数据绑定原理探究(附demo)

昨天被导师叫去研究了一下vue的双向数据绑定原理。。。本来以为原理的东西都非常高深,没想到vue的双向绑定真的很好理解啊。。。自己动手写了一个。传送门双向绑定的思想双向数据绑定的思想就是数据层与UI层的同步,数据再两者之间的任一者发生变化时都会同步更新到另一者。双向绑定的一些方法目前,前端实现数据双向数据绑定的方法大致有以下三种:1.发布者-订阅者模式(backbone.js)思路:使用自定义的data属性在HTML代码中指明绑定。所有绑定起来的JavaS...
微信小程序实战之运维小项目

微信小程序实战之运维小项目

前言自从微信推出小程序以来,现在业界炒的非常的火,具说叫微信小程序是因为某公司不让叫应用号,我在朋友圈也看过pony的和张小龙朋友圈关于名字的讨论截图,不知道是真是假,反正名字是定了,叫啥无所谓,还是知道它是干啥的比较重要, 像网上说什么新风口了,原生APP以后没活路了等相关文章喜欢的可以多看看, 我们今天不会在产品层面上去介绍小程序,因为我们是搞运维的,所以我还是在运维层面怎么使用小程序。今天我们用实际例子来讲解和普及小小程序如何使用,来实现类似IP13...
vue.js学习笔记:如何加载本地json文件

vue.js学习笔记:如何加载本地json文件

在项目开发的过程中,因为无法和后台的数据做交互,所以我们可以自建一个假数据文件(如data.json)到项目文件夹中,这样我们就可以模仿后台的数据进行开发。但是,如何在一个vue.js 项目中引入本地的json文件呢,下面就将步骤贴出来。(此时项目是由webpack打包而成)。整个项目是由webpack打包而成。具体项目结构如下:1:打包好的文件在此,http://pan.baidu.com/s/1dFCAzux2:我们找到bulid>dev-ser...
<< 21 22 23 24 25 26 27 28 29 30 >>