代码如下:var i=0; function addForm(){ i++; var textExtra=<p><input type="text" name=+"addInput"+i+ class="addInp"/></p>; $("#inforForm").append(textExtra); } 实现的效果是点击增加一个文本框进表单里面,自动命名name,被单引号双引号的嵌套搞得头大……
js对关键字命名我感觉有点乱 有时候是这样:getElementById、indexOf 、charCodeAt、parseFloat、navigator.appName、navigator.appVersion/appCodeName/cookieEnable/userAgent 给人的感觉是单词的首字母大写 有时候又这样:fontsize、fontcolor 给人的感觉是都是小写 但有时候又这样:innerHTML 有没有人能告诉我这其中有没有什么规律啊,我觉得我一段时间不用就会混掉了。在线等答案! //*****等了10分钟没人回答,那我只好继续...
Javascript原生并不支持命名空间,需要变通来实现。 在我们创建一个JavaScript库时,命名空间就显得举足轻重了,我们可以将组成这个JavaScript库的零散的JavaScript文件(*.js)封装在命名空间中,而无须定义全局的函数或类。比如在本章节多次出现的Person,我们就可以作为库的一部分封装到合适的命名空间中: Code 5-13: 代码如下:var com = {};com.anyjava = {};com.anyjava.Person = function(name) { //私有成员 var _na...
在做自己的毕业设计的时候将自己的表单元素ID和name命名为了nodeName: 代码如下:<form> <input type="text" name="nodeName" id="nodeName"> ........... </form> 在chrome浏览器下可以看到这么个错误: Uncaught TypeError: Object #<HTMLInputElement> has no method toLowerCase 经过分析后发现原来是表单元素命名的原因,修改一下就好了。
其他一些 JavaScript 框架包括:MooTools、Backbone、Sammy、Cappuccino、Knockout、JavaScript MVC、Google Web Toolkit、Google Closure、Ember、Batman 以及 Ext JS。 其中某些框架也使用 $ 符号作为简写(就像 jQuery),如果您在用的两种不同的框架正在使用相同的简写符号,有可能导致脚本停止运行。 jQuery 的团队考虑到了这个问题,并实现了 noConflict() 方法。 实例 您也可以创建自己的简写。noConflict() 可返回对 jQuer...
在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替换,如$('#msg')等同于JQuery('#msg') 的写法。然而,当我们引入多个js库后,在另外一个js库中也定义了$符号的话,那么我们在使用$符号时就发生了冲突。下面以引入两个库文件 jquery.js和prototype.js为例来进行说明。 第一种情况:jquery.js在prototype.js之后进行引入,如: <</span> script src = " prototype.js " type = " text/javascript " /> <</span> ...
在Jquery中,$是JQuery的别名,所有使用$的地方也都可以使用JQuery来替换,如$(#msg)等同于JQuery(#msg)的写法。然而,当我们引入多个js库后,在另外一个js库中也定义了$符号的话,那么我们在使用$符号时就发生了冲突。下面以引入两个库文件jquery.js和prototype.js为例来进行说明。 第一种情况:jquery.js在prototype.js之后进行引入,如:<script src="prototype.js" type="text/javascript"/> <script src="jquery.js" type="tex...
这个标题实在拗口,Javascript命名变量所遵循的规则 1、第一个字符必须是字母、汉字字符、 下划线(_)或美元符号($) 2、剩下的可以是下划线、汉字字符、 美元符号和任何字母、数字 以下声明变量是正确的 代码如下:var p,$p,_p; var 长,宽; 以下是错误的 代码如下:var .p;//只能是字母、数字、下划线或美元符号 var -p;//只能是字母、数字、下划线或美元符号 var p*;//只能是字母、数字、下划线或美元符号 var 4p,4长;//不能以数字开...
许多CSS样式属性的名字中都有连字符,在JavaScript中,连字符被解释为减号。 因此,CSS2Properties对象的属性名和真正的CSS属性名有点不同。 如果一个CSS属性名含有一个或多个连字符,在JS中则需要删除了连字符,并且原来紧接在连字符后的字母改为大写。 要注意的是float是JS的关键字,所以在JS中float被写作cssFloat与或floatStyle。 下面是CSS自身属性与JavaScript中CSS编码对照表: 盒子标签和属性对照:CodeCSS语法 (不区分大小...
用 jQuery 绑定和解绑事件监听器都是非常简单的。但是当你为一个元素的一个事件绑定了多个监听器时,怎样精确地解绑其中一个监听器?我们需要了解一下事件的命名空间。 看下面这段代码: 代码如下:$(#element) .on(click, doSomething) .on(click, doSomethingElse); 像上面这样绑定事件监听器,当元素被点击时,doSomething 和 doSomethingElse 这两个监听器都会被触发。这是使用 jQuery 的一个便利之处,可以随时给元素的同一个...
然而,在不同的文件中给一个命名空间添加属性的时候,首先要保证这个命名空间是已经存在的,同时不对已有的命名空间造成任何破坏。可以通过非破坏性的命名空间函数实现:代码如下:var KUI = KUI || {};KUI.utils = KUI.utils || {};KUI.utils.namespace = function(ns){ var parts = ns.split("."), object = KUI, i, len; if(parts[0] === "KUI"){ parts = parts.slice(1); } for(i = 0, len = ...
首先我们应该知道,在jquery中,$(美元符号)就是jquery的别名,也就是说使用$和使用jquery是一样的,在很多时候我们命名空间时,正是因为这个$而产生的冲突的发生。比如说:$(#xmlas)和JQuery(#xmlas) 虽然在写法上不同,但在实际上却是完全等同的。 要想解决这个冲突,其实最简单的方法就是使用不同的名称来命名,或者让执行代码认为是不同的命名空间即可。 一、 jQuery库在其他库之前导入,直接使用jQuery(callback)方法如:代...
使用过Java、C#的同学对命名空间非常的熟悉,在复杂的系统中会有N多的函数、对象,语言提供的、架构预定义的,这么多的函数和对象,由于编程规范要求起有实际意义的名字,难免会重名发生错误调用,而有了命名空间烦恼就没有了,不但可以分类组织函数与对象,还可以形成隔离,解决重名问题。 使用JavaScript就没有这么舒服了,Javascript只有函数作用域,什么块儿啊、神马文件啊统统都认为是一个命名空间的,有时候因为一些重名问题...
代码如下://,创建一个默认的,全局的命名空间var Company = {};//使用对象创建子命名空间Company.project = {};//创建最终的命名空间,包含一些值为函数的属性Company.project.OA = { add: function(a, b) { return a + b; }, subtract: function(a, b) { return a - b; }}; //调用Company.project.OA.add(num1, num2);
变量命名还应遵守以下某条著名的命名规则: 著名的变量命名规则Camel 标记法首字母是小写的,接下来的字母都以大写字符开头。例如: 代码如下:var testValue = 0, secondValue = "hi";Pascal 标记法首字母是大写的,接下来的字母都以大写字符开头。例如: 代码如下:var TestValue = 0, SecondValue = "hi";匈牙利类型标记法在以 Pascal 标记法命名的变量前附加一个小写字母(或小写字母序列),说明该变量的类型。例如,i 表示整数...