JS——杂知识点
2013-12-24 15:09
357 查看
18、5个能够有效帮助你快速创建超棒CSS3动画效果的类库 http://www.gbin1.com/technology/css/20121128-css3-animation-libraries/
17、jquery滑动效果有animate(自定义动画)、fadeToggle(滑动)、slideToggle(淡入淡出)等等
对于slideToggle,假如要让一个div缩小扩大,那么他默认是向上缩,向下伸。如果要让这个div向下缩,向上伸呢?
解决办法有2种:
1、可以使用另一个div包住这个div,背景颜色设置为白色,被包住的不动,白色div的滑动即可实现相反方向滑动。(遮罩效果)
2、使用另一个div包住要滑动的div,设置外层div样式:overflow:hidden,内层使用animate进行自定义滑动,改变其css的margin-top,如由原来的0变为500px;这样也可以缩下来,伸上去。
16、document.selection对象的介绍: http://ablya.iteye.com/blog/470623
15、鼠标选中文本事件:
<script type="text/javascript">
document.onmouseup = document.ondbclick= function(){
var txt;
if(document.selection){
txt = document.selection.createRange().text
}else{
txt = window.getSelection()+'';
}
if(txt){show(txt)}
}
function show(txt){
alert(txt)
}
</script>
14、object的toSource方法,返回源码的字符串。该方法在 Internet Explorer 中无效。
13、数组操作:
新增有2种方法,push追加元素到后面,unshift追加元素在前面。
删除有2种方法:pop删除最后一个元素,shift删除第一个元素
数组连接:concat即可连接元素,也可以连接数组。该方法不修改原来数组,而是产生副本
排序:sort默认安装字母排序,从小到大排
翻转:reverse,元素顺序颠倒
截取元素:slice
删除元素并添加元素:splice
参考:http://www.w3school.com.cn/js/jsref_obj_array.asp
12、arguments对象冒充实现array的方法。如数组的方法slice
Array.prototype.slice(arguments,arg1,arg2);
11、关于js 函数同名不同参数。
定义了2个同名函数,一个带参数,一个不带参数。带参数将覆盖
function t1(){
return 1;
}
function t1(arg1){
return arg1;
}
alert(t1());
alert(t1(2));
alert(t1(3,4));
以上代码执行返回分别是:undefined、2、3
若将无参函数和有参函数位置对调一下,执行的结果则全部为1.
总结:同名函数,后面定义的覆盖前面。实参>=形参 当然也可以实参<形参,只要形参不需要用到即可,否则返回undefined
10、传递给函数的隐含参数:arguments arguments不是数组,但类似数组,也有下标,也有length属性,也可以通过下标获取参数值。arguments还有个属性callee(被调用函数本身)
9、将函数作为参数传递。一般都是传函数名作为参数,如:
var test = function (funName){
funName();
};
test(myFunc);
function myFunc(){
alert("dome!");
}
8、typeof 运算符把类型信息当作字符串返回。typeof 返回值有六种可能:"number," "string," "boolean," "object," "function," 和 "undefined." 【没有array】
7、Function.prototype递归:Function.prototype.test=function(){} //给Function方法添加原型方法test。也就是每一个方法都有一个原型方法test(包括test本身)
故:可以这样调用:function a(){};
a.test.test(); //a本身就是function,通过原型链找到test方法,test也是function,也通过原型找到test,并执行它
6、定义函数时分有名函数、无名函数。如:有名:function name(){} 、 无名: var name = function(){}
无名函数赋值给变量。对于有名函数,它可以出现在调用之后再定义;而对于无名函数,它必须是在调用之前就已经定义。
<script language="JavaScript" type="text/javascript">
<!--
func();
var func=function(){ //无名函数
alert(1)
}
//-->
</script>
这段语句将产生func未定义的错误,而:
以下是引用片段:
<script language="JavaScript" type="text/javascript">
<!--
func();
function func(){
alert(1)
}
//-->
</script>
则能够正确执行,下面的语句也能正确执行:
<script language="JavaScript" type="text/javascript">
<!--
func();
var someFunc=function func(){
alert(1)
}
//-->
</script>
5、JS格式化。网上有很多在线js格式化工具。可以对JS进行加密压缩。如:http://tool.chinaz.com/Tools/JsFormat.aspx
http://app.baidu.com/app/enter?appid=307884
http://js.clicki.cn/ (推荐 ,支持解压)
4、JS splice方法 http://www.w3school.com.cn/js/jsref_splice.asp
arr.splice有3-n个参数,arg1:数组下标 arg2:要删除的个数 arg3-n:添加的新元素 返回原来数组
3、计算js执行时间,var d = new Date();.......//这里要执行的代码 d = new Date() - d; 得到的d即为代码执行的毫秒数
2、10款JS富文本编辑器:/article/4754227.html
1、系统对象的每个属性都有四个固有的属性,是哪四个?(这道题表明的是属性的属性,也就是prototype的属性)
答:[[Configurable]]:表示能否通过delete删除属性从而重新定义属性,能否修改属性的特征,或者吧属性修改为访问器属性。
[[Enumerable]]:表示能否通过for-in循环属性。
[[Writeable]]:表示能否修改属性的值。
[[Value]]:包含这个属性的数据值。
可参考Object.defineProperty()方法
Object.defineProperty(obj,'name',{
Writeable:true,Value:"xiaoku"
});
17、jquery滑动效果有animate(自定义动画)、fadeToggle(滑动)、slideToggle(淡入淡出)等等
对于slideToggle,假如要让一个div缩小扩大,那么他默认是向上缩,向下伸。如果要让这个div向下缩,向上伸呢?
解决办法有2种:
1、可以使用另一个div包住这个div,背景颜色设置为白色,被包住的不动,白色div的滑动即可实现相反方向滑动。(遮罩效果)
2、使用另一个div包住要滑动的div,设置外层div样式:overflow:hidden,内层使用animate进行自定义滑动,改变其css的margin-top,如由原来的0变为500px;这样也可以缩下来,伸上去。
16、document.selection对象的介绍: http://ablya.iteye.com/blog/470623
15、鼠标选中文本事件:
<script type="text/javascript">
document.onmouseup = document.ondbclick= function(){
var txt;
if(document.selection){
txt = document.selection.createRange().text
}else{
txt = window.getSelection()+'';
}
if(txt){show(txt)}
}
function show(txt){
alert(txt)
}
</script>
14、object的toSource方法,返回源码的字符串。该方法在 Internet Explorer 中无效。
13、数组操作:
新增有2种方法,push追加元素到后面,unshift追加元素在前面。
删除有2种方法:pop删除最后一个元素,shift删除第一个元素
数组连接:concat即可连接元素,也可以连接数组。该方法不修改原来数组,而是产生副本
排序:sort默认安装字母排序,从小到大排
翻转:reverse,元素顺序颠倒
截取元素:slice
删除元素并添加元素:splice
参考:http://www.w3school.com.cn/js/jsref_obj_array.asp
12、arguments对象冒充实现array的方法。如数组的方法slice
Array.prototype.slice(arguments,arg1,arg2);
11、关于js 函数同名不同参数。
定义了2个同名函数,一个带参数,一个不带参数。带参数将覆盖
function t1(){
return 1;
}
function t1(arg1){
return arg1;
}
alert(t1());
alert(t1(2));
alert(t1(3,4));
以上代码执行返回分别是:undefined、2、3
若将无参函数和有参函数位置对调一下,执行的结果则全部为1.
总结:同名函数,后面定义的覆盖前面。实参>=形参 当然也可以实参<形参,只要形参不需要用到即可,否则返回undefined
10、传递给函数的隐含参数:arguments arguments不是数组,但类似数组,也有下标,也有length属性,也可以通过下标获取参数值。arguments还有个属性callee(被调用函数本身)
9、将函数作为参数传递。一般都是传函数名作为参数,如:
var test = function (funName){
funName();
};
test(myFunc);
function myFunc(){
alert("dome!");
}
8、typeof 运算符把类型信息当作字符串返回。typeof 返回值有六种可能:"number," "string," "boolean," "object," "function," 和 "undefined." 【没有array】
7、Function.prototype递归:Function.prototype.test=function(){} //给Function方法添加原型方法test。也就是每一个方法都有一个原型方法test(包括test本身)
故:可以这样调用:function a(){};
a.test.test(); //a本身就是function,通过原型链找到test方法,test也是function,也通过原型找到test,并执行它
6、定义函数时分有名函数、无名函数。如:有名:function name(){} 、 无名: var name = function(){}
无名函数赋值给变量。对于有名函数,它可以出现在调用之后再定义;而对于无名函数,它必须是在调用之前就已经定义。
<script language="JavaScript" type="text/javascript">
<!--
func();
var func=function(){ //无名函数
alert(1)
}
//-->
</script>
这段语句将产生func未定义的错误,而:
以下是引用片段:
<script language="JavaScript" type="text/javascript">
<!--
func();
function func(){
alert(1)
}
//-->
</script>
则能够正确执行,下面的语句也能正确执行:
<script language="JavaScript" type="text/javascript">
<!--
func();
var someFunc=function func(){
alert(1)
}
//-->
</script>
5、JS格式化。网上有很多在线js格式化工具。可以对JS进行加密压缩。如:http://tool.chinaz.com/Tools/JsFormat.aspx
http://app.baidu.com/app/enter?appid=307884
http://js.clicki.cn/ (推荐 ,支持解压)
4、JS splice方法 http://www.w3school.com.cn/js/jsref_splice.asp
arr.splice有3-n个参数,arg1:数组下标 arg2:要删除的个数 arg3-n:添加的新元素 返回原来数组
3、计算js执行时间,var d = new Date();.......//这里要执行的代码 d = new Date() - d; 得到的d即为代码执行的毫秒数
2、10款JS富文本编辑器:/article/4754227.html
1、系统对象的每个属性都有四个固有的属性,是哪四个?(这道题表明的是属性的属性,也就是prototype的属性)
答:[[Configurable]]:表示能否通过delete删除属性从而重新定义属性,能否修改属性的特征,或者吧属性修改为访问器属性。
[[Enumerable]]:表示能否通过for-in循环属性。
[[Writeable]]:表示能否修改属性的值。
[[Value]]:包含这个属性的数据值。
可参考Object.defineProperty()方法
Object.defineProperty(obj,'name',{
Writeable:true,Value:"xiaoku"
});
相关文章推荐
- js 复制内容到粘贴板的兼容性
- javascript 学习要点
- js新增节点
- JSON在J2EE前后台多值传送时的简单调用
- jsoneditoronline
- JS刷新当前页面的几种方法总结
- js中indexof的用法详细解析
- js执行后不刷新页面
- JSON在J2EE前后台多值传送时的简单调用
- JS对象JS Array(一)
- JavaScript简介及基本语法
- 12种JavaScript MVC框架之比较
- 浏览器上模拟qq的消息提示声/网页播放声音
- jsp标签
- JavaScript, We Hardly new Ya
- 给大家介绍款在线压缩JS的工具
- JavaScript 基础
- js闭包的用途 【转】
- 21个Javascript技巧
- js window.open 打开页面并居中