我有一个已经有类的元素:
<div class="someclass">
    <img ... id="image1" name="image1" />
</div>
现在我想创建一个Javascript函数,它将一个类添加到div(不替换,但添加).
我怎样才能做到这一点?
我有一个<div id="masterdiv">有几个孩子<div>的div .
例:
<div id="masterdiv">
  <div id="childdiv1" />
  <div id="childdiv2" />
  <div id="childdiv3" />
</div>
如何使用jQuery 清除<div>master 中所有子<div>进程的内容?
我有一个文本输入,我不想让用户使用空格,键入的所有内容都将变为小写.
我知道我不允许在ng-model上使用过滤器,例如.
ng-model='tags | lowercase | no_spaces'
我查看了创建自己的指令但是添加了函数$parsers并且$formatters没有更新输入,只更新了其他元素ng-model.
如何更改我正在输入的输入?
我本质上是在尝试创建"标签"功能,就像StackOverflow上的功能一样.
dom-manipulation angularjs angularjs-filter angularjs-ng-model
它们empty()和remove()方法之间有什么区别jQuery,当我们调用这些方法时,正在创建的对象将被销毁并释放内存?
想像:
<div id="old-parent">
    <span>Foo</span>
    <b>Bar</b>
    Hello World
</div>
<div id="new-parent"></div>
可以编写什么JavaScript来移动所有子节点(包括元素和文本节点)old-parent到new-parent没有jQuery?
我并不关心节点之间的空白,虽然我希望能够抓住流浪Hello World,但它们也需要按原样迁移.
编辑
要清楚,我想最终得到:
<div id="old-parent"></div>
<div id="new-parent">
    <span>Foo</span>
    <b>Bar</b>
    Hello World
</div>
提出重复的问题的答案将导致:
<div id="new-parent">
    <div id="old-parent">
        <span>Foo</span>
        <b>Bar</b>
        Hello World
    </div>
</div>
有没有什么技术可以用来找到改变HTML元素的javascript?我在查找特定元素如何display:none在加载时添加内联样式时遇到一些麻烦.我知道我会找到最终完成此操作的脚本,但我希望这个过程更容易.
我的理想解决方案是在修改DOM元素后立即破解javascript执行的一些方法.我知道Chrome的开发工具能够右键单击一个元素并选择Break On> Attribute Modifications.但是,这会在页面加载期间发生,所以如果我可以在所有其他脚本声明之前插入一些脚本,这些脚本声明"监视带有类XYZ的元素"并在元素修改时中断JS执行,那将是非常好的.然后,JS执行将破坏我可以看到修改元素的JS,或者可能通过查看调用堆栈找到,但无论哪种方式,我都能看到触发中断发生的脚本.我找到了一些答案告诉我如何使用Chrome开发工具/ Firebug,但就像我说的,这个问题是关于程序化的方法.
我需要用jasmine对一些DOM操作函数进行单元测试(目前我在浏览器和Karma中运行我的测试)
我想知道这样做的最佳方法是什么?
例如,我可以模拟和存根窗口并记录对象并监视它们的一些功能.但这并不是一个简单的解决方案,所以这就是为什么我问这个问题!
或者是否有更好的方法(不使用茉莉花)来做到这一点?
非常感谢
我正在创建一个文档片段如下:
var aWholeHTMLDocument = '<!doctype html> <html><head></head><body><h1>hello world</h1></body></html>';
var frag = document.createDocumentFragment();
frag.innerHTML = aWholeHTMLDocument;
变量aWholeHTMLDocument包含一个长字符串,它是页面的整个html文档,我想将它插入到我的片段中,以便动态生成和操作dom.
我的问题是,一旦我将该字符串添加到frag.innerHTML,它不应该加载此字符串并将其转换为DOM对象吗?设置innerHTML后,我不应该通过属性访问DOM吗?我尝试了frag.childNodes但它似乎没有包含任何东西,而我想要的只是访问新创建的DOM.
我有一些看起来像这样的HTML:
<div>
    <span class="red">red text</span> some more text <span class="blue">blue text</span>
</div>
我想要做的是使用jQuery删除div中的所有跨度而不管附加的类,但是将文本留在span标记中.所以最终结果将是:
<div>
    red text some more text blue text
</div>
我试图使用该unwrap()方法,但它解开了div.我也尝试删除元素,但删除元素及其文本.
我有这个select元素与option它不同.通常select元素会从最大option元素获得宽度,但我希望select元素的默认option值宽度更短.当用户选择另一个元素时option,该select元素应调整自身大小,以便整个文本始终在元素中可见.
$(document).ready(function() {
    $('select').change(function(){
        $(this).width($('select option:selected').width());
    });
});
问题:
dom-manipulation ×10
javascript ×7
jquery ×4
html ×3
dom ×2
angularjs ×1
autoresize ×1
jasmine ×1
resize ×1
select ×1
unit-testing ×1