第一二周的笔记
1.select的用法:
http://www.jb51.net/article/42523.htm
select的val()就是当前选中的val(),并且初始没有点击选择时val()值为第一项option的值。
2.Ajax的异步
jQuery中,$.getJSON只能异步,它之后的代码会先执行。要想避免异步产生问题必须想办法把代码搬到回调函数中。
3.sessionstorage的储存(可以以Json的形式存入对象)
sessionstorage和cookie和script文件中全局变量的区别:
保留期cookie>sessionstorage>全局变量
刷新后script文件重新加载,全局变量消失,如果页面没有关闭,只是刷新,则sessionstorage中的数据还在。如果关闭了页面重新打开,则sessionstorage中的数据消失,cookie中的数据保留时间最长,直到手动清除浏览器的cookie为止。
4.RegExp,判断字符串是否适配用test。
5.parseInt()函数对于0开头的字符串在新浏览器中可自动去0,在IE8及以下浏览器中,01到07没有问题,08和09会报错,因为默认八进制转换,所以需用parseInt(str,10)来明确十进制即可解决。
6.jQuery用trigger()可以往事件函数中可以传递参数,配合on()。直接手动调用(click(),change())无法传递其他参数。
参考:
http://www.frontopen.com/846.html
7.function Func(){--------------5
this.b();---------------------6
}
Func.prototype={ --------------1
a:function(){};------------------2
b:function(){--------------------3
this.c();};-------------------7
c:function(){}-------------------4
}
var obj=new Func();-----------5
在用构造函数和原型创造对象时,运行顺序首先执行prototype,提升所有属性(包括方法头部)。在原型中定义的属性方法互相调用不在乎顺序。可以看到虽然方法c书写在b后面,但是在第四步就被提升了,b的函数体在第七步才执行,此时调用c是没有问题的。
8.jQuery中的DOM对象经过了封装,无法通过变量名直接判断是否是同一个DOM对象。
比如在this==document.getElementById(“example”)判断为true的情况下,$(this)==$("#example")一般不为true.
9.网页轮播图。将image列表换成div列表,图片作为background-image,可以用Position实现一直居中。而且在Bootstrap框架下div可以自适应屏幕宽度。
10.图标字体的使用:
图标字体是用字符编码来显示图片的字体,使用时有两点:1.css中导入字体2.设置font-family字体为该字体(一般抽出成一个icon类) 3.一般在css中用伪元素添加content="\exxx"(字符编码)。
使用Bootstrap组件提供的图标字体时,直接添加类即可。但是bootstrap的图标字体中不包含常规的英文和中文字符,所以给它一个单独的span标签来设置font-family,确保不影响到其他内容的正常显示。
对于包含正常字符和图标字符的图标字体,在父元素上更改font-family也不会影响其他兄弟元素的内容显示。
11.bootstrap使用tips
有a标签的地方通过a的Href和给对应元素添加id来实现对象的控制,data-toggle设置触发器类型,如tab
使用button的地方,由于它本身没有href这种定位对象的属性,使用data-target来设置它要操控的元素,如导航条中的汉堡菜单或模态框。
具体使用时,更改这些选项即可。role之类只是标注,并没有实际用途,不加也可。