Welcome 微信登录

首页 / 脚本样式 / JavaScript

理解javascript异步编程

理解javascript异步编程

一、异步机制JavaScript的执行环境是单线程的,单线程的好处是执行环境简单,不用去考虑诸如资源同步,死锁等多线程阻塞式编程等所需要面对的恼人的问题。但带来的坏处是当一个任务执行时间较长时,后面的任务会等待很长时间。在浏览器端就会出现浏览器假死,鼠标无法响应等情况。所以在浏览器端,耗时很长的操作都应该异步执行,避免浏览器失去响应。所谓异步执行,不同于同步执行(程序的执行顺序与任务的排列顺序是一致的、同步的),每一个任务有一个或多个回调函数(callba...
简单介绍jsonp 使用小结

简单介绍jsonp 使用小结

Jsonp(JSON with Padding) 是 json 的一种"使用模式",可以让网页从别的域名(网站)那获取资料,即跨域读取数据。为什么我们从不同的域(网站)访问数据需要一个特殊的技术(JSONP )呢?这是因为同源策略。同源策略,它是由Netscape提出的一个著名的安全策略,现在所有支持JavaScript 的浏览器都会使用这个策略。首先:jsonp是json用来跨域的一个东西。原理是通过script标签的跨域特性来绕过同源策略。经过测试实验...
再谈JavaScript异步编程

再谈JavaScript异步编程

随着前端的发展,异步这个词真是越来越常见了。假设我们现在有这么一个异步任务:向服务器发起数次请求,每次请求的结果作为下次请求的参数。来看看我们都有哪些处理方法:Callbacks最先想到也是最常用的便是回调函数了,我们来进行简单的封装:let makeAjaxCall = (url, cb) => {// do some ajax// callback with result}makeAjaxCall("http://url1", (result) ...
用window.onerror捕获并上报Js错误的方法

用window.onerror捕获并上报Js错误的方法

前两天有个2048游戏的用户反馈说,打开游戏后不能玩儿,只有一个游戏面板,数字无法初始化,更无法移动,设备为iPhone 4S、iOS 5.1。尝试从微信调起Safari打开,依然不好使。由于游戏中运用了比较多的HTML5特性,所以粗略估计是有JS报错导致。不过这样的信息该如何捕获到呢?当然是传说中的window.onerror。从W3C找到关于window.onerror的方法体介绍:这个意思,基本可以就是说,window.onerror方法,我们可以写...
Bootstrap树形控件使用方法详解

Bootstrap树形控件使用方法详解

一、JQuery树形控件Jquery树形控件是一款基于JQuery+bootstrap、完全通过js和样式手写出来的非常轻量级的控件,网上很多地方都能看到它的影子。它功能简单、用户体验不错。对于一些简单的层级关系展示比较实用,但对于节点的增删改实现起来就不容易了,如果非要做,可能需要自己去封装。1、一睹初容全部收起展开一级全部展开2、代码示例此控件实现起来也非常简单,只需要引用jQuery和bootstrap组件即可。<link href="~/Co...
不用一句js代码初始化组件

不用一句js代码初始化组件

最近使用bootstrap组件的时候发现一个易用性问题,很多简单的组件初始化都需要在JS里面写很多的初始化代码,比如一个简单的select标签,因为仅仅只是需要从后台获取数据填充到option里面,可是从后台取数据就需要js的初始化,所以导致页面初始化的时候js的初始化代码里面出现很多重复的代码,看着很闹心。于是想起bootstrap table里面的data属性来,如果能够直接在html里面使用data-*这种方式来初始化简单的组件,那该多爽。我们先来看...
jQuery实现的分子运动小球碰撞效果

jQuery实现的分子运动小球碰撞效果

本文实例讲述了jQuery实现的分子运动小球碰撞效果。分享给大家供大家参考,具体如下:先看效果图吧,因为小球是运动状态的,不好截图,这里就先大体画了一下路线,表示大体意思吧,如果想看真实的效果,自己粘贴下去运行:小球有点小哟,嘿嘿,没有对细节进行详细的处理,如果像让它完美一点,自己处理下吧!这里是模拟的理想状态下的,没有摩擦力与组里的分子碰撞运动,高科技哟~~~~~~mu~a代码也没有整理,如果有心的话,把它整理成面向对象形式的吧!代码如下:<!DO...
jQuery+css实现的时钟效果(兼容各浏览器)

jQuery+css实现的时钟效果(兼容各浏览器)

本文实例讲述了jQuery+css实现的时钟效果。分享给大家供大家参考,具体如下:运行效果截图如下:这里没有做太多的修饰,简单的实现了一下功能,另外,用的是js的setTimeout方法,当时间长了之后,会有一定的延时,建议,在每隔多少分钟执行一次时钟校准!哈哈,都有误差的嘛,反正我是没给你校。具体代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://ww...
<< 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 >>