Welcome 微信登录

首页 / 脚本样式 / JavaScript

告诉你什么是javascript的回调函数

告诉你什么是javascript的回调函数

函数也是对象 想弄明白回调函数,首先的清楚地明白函数的规则。在javascript中,函数是比较奇怪的,但它确确实实是对象。确切地说,函数是用Function()构造函数创建的Function对象。Function对象包含一个字符串,字符串包含函数的javascript代码。假如你是从C语言或者java语言转过来的,这也许看起来很奇怪,代码怎么可能是字符串?但是对于javascript来说,这很平常。数据和代码之间的区别是很模糊的。//可以这样创建函数v...
js自动生成的元素与页面原有元素发生堆叠的解决方法

js自动生成的元素与页面原有元素发生堆叠的解决方法

商品属性和商品规格是js动态生成的元素,商品扩展信息的两个文本框是原有的元素,他们发生堆叠,我以为是我生成的元素所在div大小不固定导致的,因为商品规格的下面复选框是第二次ajax生成的,我怀疑第二次ajax是不是不能将页面原有元素向下推到合适的位置。搞了几个小时,尝试固定元素所在容器div的的大小,但是不好固定啊,元素的个数是不定的,尝试改变属性和规格的生成顺序,属性部分堆到规格部分上去了,规格部分的元素怎么不独立占位置呢,后来才想到会不会是浮动了,去除...
Flexigrid在IE下不显示数据的有效处理方法

Flexigrid在IE下不显示数据的有效处理方法

解决方法:网上的答案经我验证都是不靠谱的,以后大家就知道了,Flexigrid在IE下不显示数据的处理方法是:指定一下Ajax请求数据的方式为Get方式另外,flexigrid不是不可以使用“post”方式发送数据,而是“post”方式在IE下必须要有供post的数据,比如在分页的时候可以使用post方式,而在你没有什么数据要发送的话,一定要使用“get”方式,其它浏览器可能对这个要求不严格,而IE要求较严:...
jQuery之Deferred对象详解

jQuery之Deferred对象详解

deferred对象是jQuery对Promises接口的实现。它是非同步操作的通用接口,可以被看作是一个等待完成的任务,开发者通过一些通过的接口对其进行设置。事实上,它扮演代理人(proxy)的角色,将那些非同步操作包装成具有某些统一特性的对象,典型例子就是Ajax操作、网页动画、web worker等等。jQuery的所有Ajax操作函数,默认返回的就是一个deferred对象。Promises是什么由于JavaScript单线程的特点,如果某个操作耗...
使用JSON.parse将json字符串转换成json对象的时候会出错

使用JSON.parse将json字符串转换成json对象的时候会出错

在对数据库取出来的数据(特别是描述信息)里面含有特殊字符的话,使用JSON.parse将json字符串转换成json对象的时候会出错,主要是双引号,回车换行等影响明显,左尖括号和右尖括号也会导致显示问题,所以要在输出到页面进行json对象转换之前将一些特殊符合进行编码或转义,下面展示的是C#代码编码和转义几个常用特殊字符。经过笔者测试,将这些符号编码和转义之后,大部分json字符串都可以转换成json对象了。如果遇到个别问题,应朝着这个方向去查找问题。th...
require.js深入了解 require.js特性介绍

require.js深入了解 require.js特性介绍

现在,Require.js是我最喜欢的Javascript编程方式。它可以使代码化整为零,并易于管理。而Require.js Optimizer能帮助我们将一个较大的应用分散成多个较小的应用,并通过依赖串联起来,最后在编译打包时合并起来。这些原因促使我们使用require.js。那么,让我们来看看require.js有什么牛逼的特性吧!与CommonJS兼容AMD (异步模块定义规范) 出现自CommonJS工作组。CommonJS旨在创造Javascri...
容易造成JavaScript内存泄露几个方面

容易造成JavaScript内存泄露几个方面

发表于谷歌WebPerf(伦敦WebPerf集团),​​2014年8月26日。高效的JavaScript Web应用必须流畅,快速。与用户交互的任何应用程序,都需要考虑如何确保内存有效使用,因为如果消耗过多,页面就会崩溃,迫使用户重新加载。而你只能躲在角落哭泣。自动垃圾收集是不能代替有效的内存管理的,特别是在大型,长时间运行的Web应用程序中。在这次讲座中,我们将演示如何通过Chrome的DevTools对内存进行有效的管理。并了解...
JavaScript中匿名、命名函数的性能测试

JavaScript中匿名、命名函数的性能测试

我们经常通过匿名函数(Anonymous function)来写回调。简单来讲匿名即没有名字的函数,一般都立即执行。但是它与命名函数(有名字的函数)的性能如何呢?我们可以比较一下,我们随便找一台可以执行Shell命令的计算机来使用大量函数调用看一看二者执行消耗时间:anonymous.js复制代码 代码如下:var count = 100000000 , sum = 0while (count--) (function() { sum++ })()执行一下...
通过location.replace禁止浏览器后退防止重复提交

通过location.replace禁止浏览器后退防止重复提交

在网页设计中,可能由于某种需求,需要禁止浏览器的后退按钮,特别是一些对用户操作比较严格的网站,如果用户重复提交事件,然后又后退,这样可能会对某些数据产生灾难性的问题。所以今天就向大家介绍一种通过location.replace禁止浏览器后退按钮的方法。这种方法的原理是,用新页面的URL替换当前的历史纪录,这样浏览历史记录中就只有一个页面,后退按钮永远处于失效状态,用户也就无法进行后退了。具体的使用方法如下所示:①比如现在我要做一个超链接,这个链接链到页面h...
IE下通过a实现location.href 获取referer的值

IE下通过a实现location.href 获取referer的值

最近,公司网站需要统计用户都是从哪些页面进入到注册页面的数据。开始,仅仅简单的通过在服务器端$ _SERVER["HTTP_REFERER"](php)来获取。但是,发现有好多注册用户没有referer值,后来查了一下在IE下采用window.location.href方式跳转的话,referer值为空。而在标签<a></a>里面的跳转的话referer就不会空。所以,通过一下代码就可以解决这个IE问题:function gotoU...
javascript中2个感叹号的用法实例详解

javascript中2个感叹号的用法实例详解

在javascript代码中经常会见到!!的情况,本文即以实例形式较为深入的分析javascript中2个感叹号的用法。分享给大家供大家参考之用。具体分析如下:javascript中的!!是逻辑"非非",即是在逻辑“非”的基础上再"非"一次。通过!或!!可以将很多类型转换成bool类型,再做其它判断。一、应用场景:判断一个对象是否存在假设有这样一个json对象:{ color: "#E3E3E3", "font-weight": "bold" }需要判断是...
<< 911 912 913 914 915 916 917 918 919 920 >>