Tag: dom

jQuery框架内部

我试图理解如何编写jquery框架的内部结构,并发现很难理解代码。 有没有人有任何关于开始的好方法的建议。 感谢所有有用的输入。 编辑主题,因为我添加单个评论的空间有限。 我写了很多基本的javascript代码。 我知道基本的DOM,使用事件处理程序,了解CSS基础知识。 我已经阅读了你提到的许多主题,虽然不是专家,但我对它很熟悉并且没有对闭包等一些高级主题进行编码。 这是我到目前为止使用的书籍首先是javascript – 作为首发好的开头。 我朋友推荐的书籍和我经常使用的是Javascript – 权威指南,Javascript – 好的部分(我刚读过这篇文章,当时对我来说很难)。 我的朋友刚刚推荐了Javascript Ninja的秘密 – John Resig。 看起来好像一个。 我订购了你上周推荐的Javascript设计模式书 我已经阅读了您指向的https://developer.mozilla.org/en/JavaScript 。 我会查看你指出的其他一些资源。 在我发布关于jquery的具体问题之前,让我更多地考虑一下我是否想要多做一些阅读。 谢谢苏珊

基于DOM树的JavaScript模板引擎

我正在寻找一个新的Javascript模板引擎来替换旧的jQuery模板,以满足我的客户端模板需求。 我更喜欢模板引擎处理DOM树而不是文本字符串的方法,然后将cooked字符串的内容转储到innerHTML 。 这是更好的性能,我发现DOM操作更适合构建更多DOM树的方法。 我对Javascript模板引擎有什么选择,它会直接创建DOM树而不是基于文本的引擎? 我喜欢Mustache.js的无逻辑方法,但似乎只对字符串进行操作。 原生jQuery集成也是一个很好的function。

如何识别DOM何时被更改?

有没有一种简单的方法可以知道DOM何时被更改? 是否有任何内置的JavaScript / jQuery事件/函数?

迭代页面中的每个文本元素?

我正在尝试在jQuery中编写一个脚本,它将遍历页面中的每个文本元素。 然后我需要逐个改变每个字母的颜色。 例如,对于这样的页面: Some text and some link and something else 我想得到: “Some text and ” “some link” ” and ” “something else” 并且能够为每个单独的字母设置样式(即,无论我的风格如何,都可以放回DOM中)。 我知道text()方法,但由于它结合了文本内容,因此无法完成工作,而我需要访问每个单独的文本部分。 有关如何做到这一点的任何建议?

jQuery追加循环 – DOM直到最后才更新

循环遍历大型集合并将其附加到DOM时,DOM仅在追加所有项目后刷新。 为什么在每次append()调用后DOM都不会更新? 我可以强制DOM在每次追加后刷新(或者可能在每n次追加后)? var i = 0; for (i=0; i<5000; i++) { $('#collection').append('Line Item’); } 链接到jsfiddle 注意:我理解通过将所有元素附加到局部变量,然后将该变量附加到DOM,可以实现更好的性能(避免DOM重排)。 但我希望前n个元素在屏幕上呈现,然后是下一个n等,直到呈现所有元素。

JQuery – 如何将li移动到ul中的另一个位置? (交换2里)

什么是一种很酷的方式来应用它? 我需要一个在 中交换两个 位置的脚本。 它认为应该有可能实现。 感谢您的答复。 HTML Item 1 Item 2 Item 3 Item 4 Item 5 伪Javascript(JQuery) $(“#awesome ul li:eq(1)”).exchangePostionWith(“#awesome ul li:eq(3)”); HTML结果 Item 1 Item 4 Item 3 Item 2 Item 5

jQuery比较两个DOM对象?

单击元素: $(‘.my_list’).click(function(){ var selected_object = $(this); $(‘.my_list’).each(function(){ var current_object = $(this); if( selected_object == current_object ) alert(‘FOUND IT !’); }); }); 我不知道为什么,但我没有得到警告信息“发现它!”。

替换元素中字符串的所有ocurrance

我想替换给定元素的所有后代元素(的文本)中的特定字符串。 innerHTML不能用,因为这个序列可以出现在属性中。 我尝试过使用XPath,但看起来界面基本上是只读的。 因为这仅限于一个元素,所以也不能使用document.getElementsByTagName函数。 有没有建议任何方法这样做? 任何jQuery或纯DOM方法都是可以接受的。 编辑: 一些答案表明我试图解决的问题:直接在元素上修改文本将导致所有非Text子节点被删除。 所以问题主要归结为如何有效地选择树中的所有Text节点。 在XPath中,您可以轻松地将其作为//text() ,但当前的XPath接口不允许您更改这些Text节点。 一种方法是通过递归,如Bergi的答案所示。 另一种方法是使用jQuery的find(‘*’)选择器,但这有点贵。 还在等着看是否有更好的解决方案。

如何从iframe中使用javascript获取iframe的高度? 那些包含多个iframe的网页呢?

有没有办法通过从iframe内部执行脚本来检测iframe的高度和宽度? 我需要根据iframe的不同高度/宽度动态定位iframe中的一些元素。 如果同一页面中有多个iframe会有什么区别吗? 即每个iframe想要找到自己的尺寸。 欢迎使用Javascript或jquery解决方案。 谢谢! iframe必须嵌入到其他网站上,正如下面的答案之一所述,我遇到了权限问题。

用jQuery删除元素?

我不想使用style.css中的样式,所以我决定从DOM中删除style.css。 这在Firefox和IE8中运行得很好,但在IE6中却没有: $(“LINK[href=’http://www.example.com/style.css’]”).remove(); 使用jQuery的任何其他解决方案? 这是一个例子: HTML: Testing $(document).ready(function() { $(“link[href*=’style.css’]”).remove(); }); … 这是CSS(style.css): #content { background-color:#333; } 仅在IE #content中仍然是黑暗的。 🙁 也许是jQuery的bug?