Welcome 微信登录

首页 / 脚本样式 / JavaScript

JavaScript初学者建议:不要去管浏览器兼容

JavaScript初学者建议:不要去管浏览器兼容

如果可以回到过去的话,我会告诉自己这句话:"初学JavaScript的时候无视DOM和BOM的兼容性" 我初学时的处境 在我初学JavaScript的时候最头痛的就是浏览器兼容问题。在Firefox下面好好的代码放到IE就不能显示了,又或者是在IE能正常显示的代码在firefox又报错了。 前端开发工程师的职责就包括跨浏览器开发。所以我就在还不了解JS这门语言本身的时候去花时间学习浏览器兼容知识,这样会让JS学习难度增加。但是不能兼容主流浏览器的...
javascript简单性能问题及学习笔记

javascript简单性能问题及学习笔记

1、<script>标签应越少越好(虽然有多个也不会导致程序报错),因为每个<script>标签初始下载时都会阻塞页面渲染 2、<script>标签尽量不要放在页面上方,尽量放在<body>内的最下面,因为每个<script>在执行的时候,都会下载对应的js文件,浏览器会等待所有js/css下载完成才显示出页面 3、当需要导入多个js文件的时候,一般情况下我们都是写两个<script src...
为开发者准备的10款最好的jQuery日历插件

为开发者准备的10款最好的jQuery日历插件

这篇文章介绍的是 10 款最棒而且又很有用的 jQuery 日历插件,允许开发者们把这些漂亮的日历插件结合到自己的网站中。这些日历插件易用性都很强,轻轻松松的就可以把漂亮的日历插件装饰到你的网站了。希望下面的插件列表能给予你一定的帮助,让你的 web开发更快更好。旧版本的日历插件和下拉框已经被淘汰啦,好好欣赏 jQuery 日历插件给你带来的强烈视觉冲击吧! 1. CLNDR.js CLNDR.js 是一个日历插件,用来创建日历,允许用户随意的按照自己...
Ajax提交与传统表单提交的区别说明

Ajax提交与传统表单提交的区别说明

Ajax提交是通过js来提交请求,请求与响应均由js引擎来处理,页面不会刷新,用户感觉不到实际上浏览器发出了请求。比如说我们希望网页总是显示最新的新闻,而又不想老是去点刷新按钮,我们就可以用Ajax机制来实现。网上的客服软件也是ajax请求的一个比较好的案例。传统的请求页面将实现刷新,因此局限性很大。1.为什么用AJAX?使用AJAX,用户对Web的体验会更“敏捷”:数据提交页面不会闪屏;页面局部更新速度快;网络带宽占用低。2.AJAX开发相较传统模式的简...
jquery ajax传递中文参数乱码问题及解决方法说明

jquery ajax传递中文参数乱码问题及解决方法说明

jQuery传递中文参数乱码,原因是默认的传递方式没有采用UTF-8,所有我们可以在传递参数的时候对参数进行编码,然后再操作,代码如下,红色的代码为传递的参数,已标注复制代码 代码如下:smsubmitclick = function(){ $(document).ready(function(){ var name = $("#txt_name").val(); var type = $("#seltype option:selected").val()...
jquery.ajax的url中传递中文乱码问题的解决方法

jquery.ajax的url中传递中文乱码问题的解决方法

JQueryJQuery默认的contentType:application/x-www-form-urlencoded 这才是JQuery正在乱码的原因,在未指定字符集的时候,是使用ISO-8859-1 ISO8859-1,通常叫做Latin-1。Latin-1包括了书写所有西方欧洲语言不可缺少的附加字符。JQuery的Ajax根本没有考虑到国际化的问题,使用了欧洲的字符集,所以才引起了传递中文出现乱码的问题。而我们的UTF-8则可以解决这一问题。最终指...
javascript运行机制之this详细介绍

javascript运行机制之this详细介绍

this是面向对象语言中一个重要的关键字,理解并掌握该关键字的使用对于我们代码的健壮性及优美性至关重要。而javascript的this又有区别于Java、C#等纯面向对象的语言,这使得this更加扑朔迷离,让人迷惑。this使用到的情况:1. 纯函数2. 对象方法调用3. 使用new调用构造函数4. 内部函数5. 使用call / apply 6.事件绑定1. 纯函数复制代码 代码如下:var name = "this is window"; //定义w...
二叉树的非递归后序遍历算法实例详解

二叉树的非递归后序遍历算法实例详解

前序、中序、后序的非递归遍历中,要数后序最为麻烦,如果只在栈中保留指向结点的指针,那是不够的,必须有一些额外的信息存放在栈中。方法有很多,这里只举一种,先定义栈结点的数据结构复制代码 代码如下:typedef struct{Node * p; int rvisited;}SNode //Node 是二叉树的结点结构,rvisited==1代表p所指向的结点的右结点已被访问过。lastOrderTraverse(BiTree bt){ //首先,从根节点开...
<< 801 802 803 804 805 806 807 808 809 810 >>