随笔分类 -  javascript

摘要:html代码:checkbox plugin 选择全部 清除全部 全选 测试 测试 测试 测试 测试 测试 测试 测试 测试 测试 测试 js代码一:jQuery.fn.extend({ check: function(){ return this.each(function(){this.checked = true;}); //re... 阅读全文
posted @ 2013-10-17 16:26 幻星宇 阅读(481) 评论(0) 推荐(0)
摘要:图片预加载实例 --> 再谈javascript图片预加载技术比onload更快获取图片尺寸文章更新:2011-05-31lightbox类效果为了让图片居中显示而使用预加载,需要等待完全加载完毕才能显示,体验不佳(如filick相册的全屏效果)。javascript无法获取img文件头数据,真的是这样吗?本文通过一个巧妙的方法让javascript获取它。这是大部分人使用预加载获取图片大小的例子: 1 var imgLoad = function (url, callback) { 2 var img = new Image(); 3 4 ... 阅读全文
posted @ 2013-10-16 17:44 幻星宇 阅读(316) 评论(0) 推荐(0)
摘要:当鼠标移到某个地方的时候,在旁边飘出一个DIV,离开则消失。是使用了某位大大封装的一个函数,稍微改了下。原文地址:当鼠标移动上去显示一个层,在这个对象的旁边,并且可以给这个层添加值效果如下:函数代码,放到一个JS文件里:/***鼠标移上去显示层*@paramdivId显示的层ID*@returns*/$.fn.myHoverTip=function(divId){vardiv=$("#"+divId);//要浮动在这个元素旁边的层div.css("position","absolute");//让这个层可以绝对定位varself=$( 阅读全文
posted @ 2013-10-11 17:41 幻星宇 阅读(714) 评论(0) 推荐(0)
摘要:如果你看到这篇文章,我确信你毫无疑问会认为jQuery是一个使用简便的库。jQuery可能使用起来很简单,但是它仍然有一些奇怪的地方,对它基本功能和概念不熟悉的人可能会难以掌握。但是不用担心,我下面已经把代码划分成小部分,做了一个简单的指导。那些语法看起来可能过于复杂,但是如果进入到它的思想和模式中,它是非常简单易懂的。下面,我们有了一个插件的基本层次:12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364// 阅读全文
posted @ 2013-10-09 18:20 幻星宇 阅读(347) 评论(0) 推荐(1)
摘要:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式。同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包。 本文主要是对JS操作JSON的要领做下总结。 在JSON中,有两种结构:对象和数组。 1. 一个对象以“{”(左括号)开始,“}”(右括号)结束。每个“名称”后跟一个“:”(冒号);“‘名称/值’ 对”之间运用 “,”(逗号)分隔。 名称用引号括起来;值如果是字符串则必须用括号,数值型则不须要。例如: var 阅读全文
posted @ 2013-10-09 15:56 幻星宇 阅读(258) 评论(0) 推荐(0)
摘要:通过网页title来提示用户有新消息这个功能很常见,比如现在的微博,还有一些邮箱,这个功能都很常见。如何实现则个功能呢?思路是:通过ajax访问后台,若有新消息,则将网页的title替换为 提示信息 ,并与空格来回切换。例:【你有新消息】与【 】切换。提示内容弄是动态的,所以替换文字的空格数目也是算出的。这里用全角的空格。但是如果提示 消息中有‘数字’等半角字符的话就会出现问题。全角的空格比半角的1的宽度要宽的多。这样的话,闪动起来看着就不是很舒服;解决方法就是用全角的空格替换 全角的字符,半角的空格替换半角的字符。但是document.title=' ';不论半角空格有多少个 阅读全文
posted @ 2013-08-13 11:01 幻星宇 阅读(255) 评论(0) 推荐(0)
摘要:js实现上下无缝滚动的原理是这样的:1、首先给容器设定高度或宽度,然后overflow:hidden;2、容器高度设定后,内容超出则被隐藏。3、改变容器的scrollTop(上下滚动)属性的值,让内容上下移动一个节点的位置(滚动的原理);4、到滚动的高度scrollTop大于或等于要滚动节点的高度时,设置scrollTop=0,并把把子节点树中的第一个移动到最后,重新开始滚动,无间断循环滚动效果就出现了。代码如下:phpjavarubypythonwww.phpddt.com 阅读全文
posted @ 2013-08-09 15:58 幻星宇 阅读(350) 评论(0) 推荐(0)
摘要:javascript “||”、“&&”的灵活运用博客分类:Jqueryjavascriptjavascript中运用“||”、“&&”javascript 真值和假值你是否看到过这样的代码:a=a||""; 可能javascript初学者会对此感到茫然。今天就跟大家分享一下我的一些心得。其实:Js代码 a=a||"defaultValue";与:Js代码 if(!a){a="defaultValue";}和:Js代码 if(a==null||a==""||a==undefined) 阅读全文
posted @ 2013-08-09 14:21 幻星宇 阅读(1168) 评论(0) 推荐(0)
摘要:偶尔听人说javascript闭包,让我联想起以前学编译原理和数字逻辑里讲的闭包,以前上课讲的闭包很难懂,而且含有递归的意思在里面,现在不想再查看里面的闭包概念。但javascript我是经常要用,所以是要懂这里面的概念。其实javascript里的闭包概念很简单,就是函数用到外部变量,不需要传参就可以获取。举个例子:第一个函数sayHello没有传参数,直接利用了sMessage变量,这个就叫做闭包。第二个函数复杂点,里面有个doAddition也是闭包函数,他不需要参数,直接在执行环境中获取iNum1,iNum2,还有外部变量iBaseNum。第三个函数 是能保护i变量的访问,并且一直保存 阅读全文
posted @ 2013-08-09 10:21 幻星宇 阅读(212) 评论(0) 推荐(0)
摘要:什么是argumentsarguments是是JavaScript里的一个内置对象,它很古怪,也经常被人所忽视,但实际上是很重要的。所有主要的js函数库都利用了arguments对象。所以agruments对象对于javascript程序员来说是必需熟悉的。所有的函数都有属于自己的一个arguments对象,它包括了函所要调用的参数。他不是一个数组,如果用typeof arguments,返回的是’object’。虽然我们可以用调用数据的方法来调用arguments。比如length,还有index方法。但是数 组的push和pop对象是不适用的。创建一个灵活的函数看起来貌似argument对 阅读全文
posted @ 2013-08-07 14:27 幻星宇 阅读(183) 评论(0) 推荐(0)
摘要:jquery1.6中新加了一个方法prop(),一直没用过它,官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值。官方例举的例子感觉和attr()差不多,也不知道有什么区别,既然有了prop()这个新方法,不可能没用吧,那什么时候该用attr(),什么时候该用prop()呢?大家都知道有的浏览器只要写disabled,checked就可以了,而有的要写成disabled = "disabled",checked="checked",比如用attr("checked")获取checkbox的checked属性时选中的时候可以取 阅读全文
posted @ 2013-07-25 10:04 幻星宇 阅读(186) 评论(0) 推荐(0)
摘要:eval函数的工作原理eval函数会评估一个给定的含有JavaScript代码的字符串,并且试图去执行包含在字符串里的表达式或者一系列的合法的JavaScript语句。eval函数将把最后一个表达式或者语句所包含的值或引用作为返回值。举例说明eval评估JavaScript表达式var bar = 'bar';var foobar = eval('"foo" + bar');alert(foobar);eval评估JavaScript语句var bar = 'bar';// if variable bar equals  阅读全文
posted @ 2013-06-19 17:10 幻星宇 阅读(287) 评论(0) 推荐(0)
摘要:(function( window,undefined) {varjQuery = (function() {//构建jQuery对象varjQuery =function( selector, context ) {returnnewjQuery.fn.init( selector, context, rootjQuery );}// jQuery对象原型jQuery.fn = jQuery.prototype = {constructor: jQuery,init:function( selector, context, rootjQuery ) {// selector有以下7种分支情况 阅读全文
posted @ 2013-05-09 16:04 幻星宇 阅读(215) 评论(0) 推荐(0)
摘要:在 JavaScript 中,每个函数对象都有一个默认的属性 prototype,称为函数对象的原型成员,这个属性指向一个对象,称为函数的原型对象,当我们每定义了一个函数的时候,JavaScript 就创建了一个对应的原型对象,也就是说,当我们定义一个函数的时候,实际上得到了两个对象,一个函数对象,一个原型对象。原型对象是一个特殊的对象,函数的 prototype 成员指向它的原型对象。可以通过函数对象的 prototype 成员取得这个原型对象的引用。下面定义一个函数对象 Person,然后通过 prototype 来取得它的原型对象。然后在它的原型对象上定义了一个方法。function P 阅读全文
posted @ 2013-05-09 15:34 幻星宇 阅读(183) 评论(0) 推荐(0)
摘要:1.Hold住,我们要开始动真格了!是的,看到这个标题,你一定也和我一样迫不及待了,因为我们不像之前那篇教程一样小打小闹了,我们现在要动真格了,这次我们要写的插件是上个插件的增强版本.而这个插件包含主流的插件的完整骨架.换句话说,就是我们的插件会变得更加的专业,更加的规范化,当然.也显得我们牛逼了.OK,我们现在就开始着手!2.第一个版本今天,你的客户告诉你,需要开发一个这样的插件,第一步是:选中整篇文章,并改变颜色,鼠标移过去的时候.表示读者已经读过这一段,需要把颜色变成初始的颜色,好的.这个就是全部了,你想着.嗯,应该是挺简单的.因为在上一篇教程我们已经讲解了一些关于最基本的概念,并完成了 阅读全文
posted @ 2013-05-09 15:28 幻星宇 阅读(276) 评论(0) 推荐(0)
摘要:1. 前言从现在开始,我们将一步一步学习怎么写一个jQuery插件,编写jQuery插件不是难的事情(当然这取决于你编写的这个插件的复杂程度,比如我们将要写的这些,就是一些很简单的例子),jQuery插件有两种形式.$的工具函数操作dom包装集合的方法.我们这里是针对第二种方式来写一个jQuery高亮的插件-highlight,虽然很简单哈.不过为了显示出我们比较牛逼,我们名字得起得专业一点.2. 第一步.让我们的插件更加安全(function($){ //代码都写在这里哈 })(jQuery)上面的这段代码,你可以把他理解成写插件的固定模式.就好像是我们小时候写作文的时候.开头一定是.... 阅读全文
posted @ 2013-05-09 15:21 幻星宇 阅读(285) 评论(0) 推荐(0)
摘要:有个input按钮,id为sendPhoneVerfify。编写其点击事件:$('#sendPhoneVerfify').click(function(){ var seconds = 60; var $this = $(this); $this.val(seconds + '秒后可重新发送'); var t; t = setInterval(function(){ seconds--; if (seconds <= 0) { clearInterval(t); $this.removeAttr('disabled'); $this.val 阅读全文
posted @ 2013-05-02 14:59 幻星宇 阅读(341) 评论(0) 推荐(0)
摘要:<script>window.onload = login;function login(){document.getElementById("username").value = '<?php echo $_COOKIE["username"]; ?>';document.getElementById("password").value = '<?php echo $_COOKIE["password"]; ?>';document.getEle 阅读全文
posted @ 2013-04-24 17:34 幻星宇 阅读(1642) 评论(0) 推荐(0)
摘要:/** * 日期转化成时间戳 * 日期格式 2011-02-02 21:12:13 * time_str:日期段 2011-02-02 * fix_time:时间段 21:12:13 */function strtotime(time_str, fix_time) { var time = (new Date()).getTime(); if(time_str) {//有日期段 var str = time_str.split('-'); if (3 === str.length) { var year = parseInt(str[0]) - 0; var... 阅读全文
posted @ 2013-03-21 10:44 幻星宇 阅读(492) 评论(0) 推荐(0)
摘要:现代Web应用中频繁使用的一项功能就是表单数据的序列化,XMLHttpRequest 2级为此定义了FormData类型。FormData为序列化表单及创建与表单格式相同的数据提供了遍历。下面的代码创建了一个FormData对象,并向其中添加了一些数据。var data =newFormData();data.append("name","Nicholas");这个append()方法接收两个参数:键和值,分别对应表单字段的名字和字段中包含的值。可以像这样添加任意多个键值对儿。而通过向FormData构造函数中传入表单元素,也可以用表单元素的数据预先向其 阅读全文
posted @ 2013-03-14 21:48 幻星宇 阅读(458) 评论(0) 推荐(0)