与 jQuery 可以直接对选择的所有元素调用方法不同,在纯 JavaScript 中,你需要使用 NodeList.forEach() 遍历这个 NodeList。...jQuery 的 .on() 方法使你可以处理动态添加到 DOM 中的元素的事件。...要在没有 jQuery 的情况下实现类似功能,你可以在将元素添加到 DOM 时附加事件处理程序。...// jQuery // 处理 .search-result 元素的点击事件,即使它们是通过编程动态添加到 DOM 中的 $(".search-container").on("click", ".search-result...(element); 综合起来,下面是如何创建一个 div 元素,更新其文本和类名,并将其添加到 DOM 中的示例: // 创建一个 div 元素 var element = document.createElement
,当内层函数在外层函数的外部调用时,就产生了闭包 10.用闭包可以解决什么问题 循环绑定事件中获取索引 无需全局变量实现变量值递增 11.argums是什么?...class='newDom'>div>") }) }) 49、jQuery链式调用的原理?...、如何解决项目中已经存在的js类库中 与jQuery中 的冲突?...jQuery.noConflict() jQuery 使用 noConflict 方法来放弃 调用时的命名,之后由 jQuery 代替 进行编写 54、如何用jQuery获取元素在文档中的位置?...index= (this).index() 所有同辈元素中的索引 index= (“li:even”).index($(this)) 在匹配选择器的元素中的索引 58、如何将对象转成json字符串?
去掉了 JS 中的 .on 语法。 代码实现 jQuery 对象[索引] jQuery 对象.get(索引):将 jQuery 对象转为 JS 对象。 事件 在 jQuery 中将事件封装成了对应的方法。去掉了 JS 中的 .on 语法。...6. before(element) 添加到当前元素的前面,两者之间是兄弟关系,由添加者对象调用 7. after(element) 添加到当前元素的后面...before(element):添加到当前元素的前面,两者之间是兄弟关系,由添加者对象调用。 after(element):添加到当前元素的后面,两者之间是兄弟关系,由添加者对象调用。...操作样式 addClass(value):给指定的对象添加样式类名。 removeClass(value):给指定的对象删除样式类名。
分享一个基于JQuery实现的瀑布流布局,效果如下: 实现代码如下,欢迎大家复制粘贴。 添加到ID为main的div中 var $item = $('div>').addClass('item').appendTo...($("#main")); // 创建div添加class为box,添加到class为item的div中...为box的div中 $('').attr('src', '....(含内边距) var $item = $("#main>div"); // 将最后一张图片的top值加上该图片自身高度的一半存为变量lastItemHeight
分享一个基于JQuery实现的瀑布流布局,效果如下: 实现代码如下,欢迎大家复制粘贴。 div添加class为pin,添加到ID为main的div中 var $oPin = $('div>').addClass('pin').appendTo...($("#main")); //创建div添加class为box,添加到class为pin的div中 var...//如果图片容器的下标小于当前的列数,即只有一行 if (index < num) { //将第一行每一张图片的高度存在数组中...(含内边距) var $aPin = $("#main>div"); //将最后一张图片的top值加上该图片自身高度的一半存为变量lastPinH中
,而在第十四章中,我已在该元素中定义了中的translate()函数 04 使用 DOM 选择器选中元素 第一个要解决的问题是创建一个JavaScript函数来查找页面中的所有用户链接。...所以我的下一步是将一个“hover”事件附加到页面中的所有链接。使用jQuery,可以通过调用element.hover(handlerIn, handlerOut)将悬停事件附加到任何HTML元素。...如果在元素集合上调用这个函数,jQuery方便地将事件附加到所有元素上。这两个参数是两个函数,分别在用户将鼠标指针移入和移出目标元素时调用对应的函数。...我将timer对象存储在hover()调用之外定义的timer变量中,以使timer对象也可以被“mouse out”处理程序访问。我需要这么做的原因是为了获得良好的用户体验。...这个变量将保存我通过调用$.ajax()来初始化的异步请求对象。
如果代码量比较小,这是没有问题的, 但是如果代码量庞大,就会很难知道哪些类用于 CSS,哪些类用于 JavaScript。...菜单和日历在不同的容器中,但是它们的状态是共享的。 我将用 jQuery 和 ReactJS 做的 4 个例子解释共享/独立状态的概念。...向容器 container 中渲染内容。 负责跟踪和更新容器 container 中的内容。 负责移除容器 container 中的内容。 以下是使用 React 整合后的新的 HTML: 中,我们通过 .Mood__name 和 .Mood__button-name 选择器分享 mood name ,并且通过一个容器中的按钮去更新另一个容器中的 emoji 。...总结 我希望这篇文章可以让你更好地了解需要关注的内容以及如何将 ReactJS 运用到现有的应用中。
事件委托 事件委托 允许我们不必为某些特定的节点添加事件监听器,而是将事件监听器添加到(这些节点的)某个 parent节点上。...另外,如果在实际的应用中,很有可能同过js在 div1下动态生成p 元素,这时候,我们相应地还要添加事件处理函数,像这种动态添加的动作很有可能分散在我们 应用的很多个角落,这样动态添加处理函数将是一个非常蛋疼的事儿...解决方法: 利用 事件冒泡传递的机制,将本来本元素要完成的事件处理逻辑,委托给 父类节点,父类节点根据触发事件的节点信息,执行对应的事件处理逻辑。...jQuery还有另外一种方式:将元素的事件处理委托给DOM根节点来处理,这种方式是live()方式: live(type, [data], fn) type : 事件类型 data :附加的额外数据...fn : 相应的处理函数 描述:jQuery 给所有匹配的元素附加一个事件处理函数,即使这个元素是以后再添加进来的也有效。
margin: 0 auto;:设置容器的上、下外边距为 0,左右居中对齐(即水平居中)。 text-align: center;:将容器内的文本内容居中对齐。...以下是对代码的简单解释: div class="container">:这是一个容器(container)元素,用来包裹整个留言板的内容,并通过 CSS 进行样式设置。...GET 请求,从服务器端获取留言数据,并将每条留言动态添加到页面的 .container 元素中。...message.message:留言的具体内容。 $(".container").append(html):将生成的 HTML 添加到页面上的 .container 元素中。...#from 表示 HTML 元素的 id 选择器。 .val() 方法用于获取输入框的当前值。返回的值会存储在 from 变量中。
首先,我们需要将导航栏封闭在一个容器中,这将是我们的实际航路点,并用作方便的占位符(在下面进行更多介绍)。...在处理程序函数的主体中,我们使用的是jQuery的.toggleClass()方法的.toggleClass()变体,该变体提供了一种有用的速记方式:在此语法中,第二个参数确定是否将类添加到目标元素或从中删除...值得庆幸的是,它所要做的只是一个简单的修复-将以下代码添加到您的处理函数中可以使跳转消失。...使用offset变量,这很容易:对于距顶部15像素的偏移量,请将offset:15px添加到.waypoint()的选项中,然后在.sticky CSS规则.sticky top:0px更改为top:15px...然后,我们将selected类从导航栏中的所有链接中删除,然后将其重新应用到其href属性与当前活动部分的id对应的类。 这工作得很好。
images 是存放图片的文件夹。 css 是存放样式文件的文件夹。 js/jquery.min.js 是 jQuery 文件。...使用 $(".list").append(initList) 将生成的选项添加到 .list 容器中。 点击添加选项逻辑: 给 .add 元素绑定点击事件。...调用 initRender 函数生成新选项的 HTML,并添加到 .list 容器中。 如果需要显示删除按钮,遍历 .list 容器中的所有选项,为没有删除按钮的选项添加删除按钮。...执行 JavaScript 代码,调用 initRender 函数生成两个初始的投票选项,并添加到 .list 容器中。...添加选项: 用户点击 “添加选项” 按钮,触发 .add 元素的点击事件。 计算新选项的序号,判断是否需要显示删除按钮。 生成新选项的 HTML 并添加到 .list 容器中。
解决方案:父级 div 定义 overflow:hidden、结尾处加空 div 标签 clear:both、父级 div 定义伪类 :after(最后一个子元素的后边)和 zoom。...权值为10:代表类,伪类和属性选择器,如.content。 权值为1:代表类型选择器和伪元素选择器,如div p。 *通用选择器(*),子选择器(>)和相邻同胞选择器(+)的权值都为0。...// 此处在绑定函数时的 i 是没有问题的,从 0 到 elements.length - 1;只是在子函数中的 i 是一直保持对父环境对象中的 i 的引用的,所以在调用时一直会输出 elements.length...Property 和 Attribute 的区别 Attribute 就是 DOM 节点自带的属性,例如 div 中常用的 id、class 等;Property 是这个 DOM 元素作为对象,其附加的内容...Gulp 基于“流”的概念,只有一次 IO 过程,类似于 Linux 里的管道,又像 jQuery 的链式调用;Gulp 更易用; 28、浏览器可以并行下载多少个资源?
jQuery.data() 的实现方式 jQuery.data() 的作用是为普通对象或 DOM Element 附加(及获取)数据。 ...而 “cache” 又是 “obj” 的一个属性,在 jQuery 1.6中,这个属性的名称是 “jQuery16”加上一个随机数(如下面提到的 “jQuery16018518865841457738”...最后公开了 data 方法,先根据传入的 “obj”,获取附加在 “obj” 上的 “cache”; 当传入两个参数时,调用 getData()方法;当传入三个参数时,则调用 setData() 方法。...然后,在对外开放的 data 函数中,先判断传入的第二个参数的名称,如果这个参数是一个 Object 类型的实例,则调用 setDataWithObject() 方法。 ...globalCache 对象用于存放附加到 DOM Element 上的 “cache”,可以视为 “cache” 的“容器”。uuid 表示 “cache” 对应的唯一标识,是唯一且自增长的。
/js/translation.json 文件中的数据(必须使用给定的路径请求,否则可能会请求不到数据),并将后者中的数据保存至 translation 变量中。....head 类设置头部容器的显示方式为 flex 布局,宽度为视口宽度,背景颜色为白色,并居中内容。....intro 类设置介绍部分的内边距、边框、最大宽度、居中显示和字体大小。 .small 类设置特定段落的字体大小。 .list 类设置项目列表容器的最大宽度并居中显示。...使用 data.slice(0, 15) 取出前 15 条项目数据,遍历这些数据,调用 createProjectItem 函数生成项目列表项的 HTML 字符串,并将其添加到页面中类名为 list 的...当点击时,根据当前页码 page 取出下一页的 15 条项目数据,同样调用 createProjectItem 函数生成 HTML 字符串并添加到页面中。
是浏览器自带对象,dom 对象只能调用dom 里面的属性和方法, 不能调用jQuery 对象里面的属性和方法 jQuery对象:jquery 对象是通过jQuery 包装页面上面的元素或者dom 而产生的一个新的...对象,jquery 对象时jQuery 独有的,不能调用dom 对象里面的属性和方法,jQuery 对象是一个数组。...,然后调用attr()) 3:文本节点 (先找到元素节点然后调用text()) 节点的创建: 元素节点的创建,属性节点,文本节点 jQuery 当中的事件 通常会把 jQuery 代码放到 ...方法 描述 addClass() 向匹配的元素添加指定的类名。 after() 在匹配的元素之后插入内容。 append() 向匹配元素集合中的每个元素结尾插入由参数指定的内容。...函数 描述 .add() 将元素添加到匹配元素的集合中。 .andSelf() 把堆栈中之前的元素集添加到当前集合中。 .children() 获得匹配元素集合中每个元素的所有子元素。
,还比如像订餐类的APP,进入商家的时候,会出现一堆饭的列表,左侧是饭的分类,右侧是饭的列表等等。...当左侧变窄时,右侧自动变宽;当左侧变宽时,右侧自动变窄,下面来实现一下: js代码,在这之前,需要注释css中的以下三行代码 .left{ position:relative; float...red; } .right-content{ /* margin-left:200px; */ height: 100%; background: blue; } 其实这三行我已在注释中标明了...=doc.querySelector(".toggle-btn"), //左侧容器和右侧容器,实际上就只需要操作这两个元素 leftContainer=doc.querySelector..."收起" : "展开"; }; 其实这只是简单的封装,你可以使用jQuery加入动画,还可以写成jQuery插件等。
-- 引入 js jquery必须先引入 --> jquery-3.2.1/jquery-3.2.1.js... div> div> 用法 多个轮播 轮播需要在id最外面的容器 (the .carousel) 上使用 ,以便轮播控件正常运行。...对于数据属性,将选项名称附加到 中data-,如data-interval=””. 姓名 类型 默认 描述 间隔 数字 5000 自动循环项目之间的延迟时间。...活动 Bootstrap 的 carousel 类公开了两个用于连接 carousel 功能的事件。...这两个事件都具有以下附加属性: direction: 轮播的滑动方向(”left”或”right”)。 relatedTarget: 作为活动项滑入到位的 DOM 元素。