由于浏览器的冒泡行为。造成如果在一个DIV元素上同时定义了mouseover,mouseout的时候,当鼠标移动到DIV中的child子元素的时候,就会同时执行了两个操作mouseover和mouseout。
解决方案:阻止冒泡行为,当执行mouseover的时候不触发mouseout的操作。
...以下是本人几次面试中出现几率最高的几道题,整理了一下,和大家分享,请批评指正,共同进步。
/*this 的作用域的考察*/
var obj = {
show: function () {
this.display = true;
...
面试前端开发工作的,差不多都有这道题:DOM操作——怎样添加、移除、移动、复制、创建和查找节点。
(1)创建新节点
createDocumentFragment() //创建一个DOM片段
createElement() //创建一个具体的元素
...
问题介绍:
传统上,加载Javascript文件都是使用<script>标签。
就像下面这样: <script type="text/javascript" src="example.js"></script>
<script>标签很方便,只要加入网页,浏览器就会读取并运行。但是,它存在一些严重的缺陷。
(1)严格的读取顺序。由于浏览器按照<script>在网页中出现的顺序,读取Javascript文件,然后立即运行,导致在多个文件互相依赖的情况下,依赖性最小的文件必须放在最前面,依赖性最大的文件必须放在最后面,否则代码会报错。
...一、JQuery的环境配置
1、JQuery分为压缩版和非压缩版
2、$=JQuery
3、$(document).ready(funtion(){}); 相当于 $(function(){});
4、注释用//
5、DOM对象与JQuery对象的相互转换
var $variable (jquery对象) =$(variable)(Dom对象);
...
这篇文章是根据目前 chrome 稳定版(19.0.1084.52 m)写的, 因为 google 也在不断完善chrome developer tool, 所以 chrome 版本不同可能稍有差别. 一些快捷键也是 windows 上的, mac 下的应该大同小异.
常规的断点相关的 breakpoint/conditional-breakpoint/call-stack/watch-expressions 等就不涉及了.
...下边是读取json填充select标签,因为分类是无限的,所以采用js的递归方法:
var json = { "parents": [ { "name": "餐饮", "childrens": [ { "name": "小吃", "childrens": [ { "name": "东北小吃" } ] }, { "name": "大吃" } ] }, { "name": "酒店" }, { "name": "度假村", "childrens": [{ "name": "海南" }, { "name":"三亚", "childrens": [] } ] } ] };
...<script type="text/javascript" src="/downloadCamnpr/json2.js"></script>
<script type="text/javascript"n>
//把json 字符串转换成对象
var string = '{"name":"frank", "age":29, "birthday":"1978-1-1"}';
...