相关疑难解决方法(0)

如何将DOM元素设置为第一个子元素?

我有元素E,我正在添加一些元素.突然之间,我发现下一个元素应该是E的第一个孩子.诀窍是什么,怎么做?方法unshift不起作用,因为E是一个对象,而不是数组.

很长的路要走迭代E的孩子并移动'em键++,但我确信有一个更漂亮的方式.

javascript arrays jquery dom elements

203
推荐指数
6
解决办法
15万
查看次数

ES6/2015中的零安全财产访问(和条件分配)

是否有一个null-safe属性访问(空传播/存在)操作者在ES6(ES2015/JavaScript.next /和谐)等?.的CoffeeScript例如?或者是否计划用于ES7?

var aThing = getSomething()
...
aThing = possiblyNull?.thing
Run Code Online (Sandbox Code Playgroud)

这将大致如下:

if (possiblyNull != null) aThing = possiblyNull.thing
Run Code Online (Sandbox Code Playgroud)

理想情况下,解决方案不应该分配(甚至undefined)到aThing如果possiblyNullnull

javascript coffeescript ecmascript-6 babeljs

137
推荐指数
6
解决办法
7万
查看次数

如何在body标签中insertBefore()元素?

我试图在js中使用insertBefore,如下所示:

var p = document.createElement("p");
p.innerHTML = "test1";
document.body.insertBefore(p, null);

var p = document.createElement("p");
p.innerHTML = "test2";
document.body.insertBefore(p, null);
Run Code Online (Sandbox Code Playgroud)

但是这会在body标签关闭之前添加最后一个p元素,我怎么能使用它以便在打开时添加到顶部?所以添加的最后一个元素将是body标签内的第一个元素.

我试过了:

document.body.insertBefore(p, document.getElementsByTagName('body')[0]);
Run Code Online (Sandbox Code Playgroud)

但是萤火虫表明:

找不到节点"代码:"8

javascript dom insert getelementsbytagname

46
推荐指数
2
解决办法
6万
查看次数

如何使用javascript/jquery从url中提取文件名?

某个变量可能包含相对路径或绝对路径.无论哪种方式,我需要能够从变量中提取文件名:

http://www.somesite.com/dir1/dir2/filename.gif
/dir1/dir2/filename.gif
Run Code Online (Sandbox Code Playgroud)

目录结构也是任意的.所以基本上给出了上面的url(使用arbirtrary目录结构)我需要拉'filename.gif'.提前致谢

javascript regex jquery

33
推荐指数
7
解决办法
7万
查看次数

如何追加孩子之前.原型

我用javascript库制作一个网站.如果用户在下拉列表(选择)框中选择一个选项,则必须添加标签和文本框.这是我使用appendChild选项.appenChild选项的唯一问题是始终在used元素中的项之后添加项.这是我的代码:

var newFreeformLabel = document.createElement('label');
newFreeformLabel.innerHTML = 'Omschrijving:';

var newFreeformField = document.createElement('input');
newFreeformField.className = 'textfield';
newFreeformField.name = 'factuur_orderregel[]';

var newFreeformSpacer = document.createElement('div');
newFreeformSpacer.className = 'spacer';

container.appendChild(newFreeformLabel);
container.appendChild(newFreeformField);
container.appendChild(newFreeformSpacer);
Run Code Online (Sandbox Code Playgroud)

这里容器是必须添加项目的元素.唯一的问题是项目被添加到元素的末尾,我想在html元素的开头添加项目.

html javascript prototypejs

31
推荐指数
3
解决办法
8万
查看次数

使用javascript的.insertBefore将项目作为最后一个子项插入

我很想念jQuery.我正在开展一个项目,我需要再次使用优质的纯粹Javascript弄脏手.

我有这种情况:

parent
    child1
    child2
    child3
Run Code Online (Sandbox Code Playgroud)

通过javascript,我希望能够在任何这些孩子之前或之后插入一个新节点.虽然javascript有insertBefore,但没有insertAfter.

之前插入可以正常工作以在其中任何一个之前插入一个节点:

parent.insertBefore(newNode, child3)
Run Code Online (Sandbox Code Playgroud)

但是如何在child3之后插入一个节点?我现在正在使用它:

for (i=0,i<myNodes.length,i++){
    myParent.insertBefore(newNode, myNodes[i+1])
}
Run Code Online (Sandbox Code Playgroud)

那就是在我的每个节点的下一个兄弟节点之前插入我的newNode(意味着它将它放在每个节点之后).

当它到达最后一个节点时,myNodes[i+1]变为undefined我现在正在尝试访问不存在的数组索引.

我认为'错误了,但似乎工作得很好,在那种情况下,我的节点确实插在最后一个节点之后.

但那是对的吗?我现在正在几个现代浏览器中测试它,看起来没有看似不好的效果.有没有更好的办法?

javascript dom

6
推荐指数
4
解决办法
2万
查看次数

Javascript - 更改html标记类型

我有一个问题,我可以将html标签替换为另一个吗?

但我不想让内容空白.像这样:

<a data-text="text">content</a>
Run Code Online (Sandbox Code Playgroud)

<div data-text="text">content</div>
Run Code Online (Sandbox Code Playgroud)

任何的想法 ?

html javascript jquery

5
推荐指数
5
解决办法
5832
查看次数

如何使用JavaScript/jQuery用文本替换元素?

假设我有这个:

<span id="foo">bar</span>
Run Code Online (Sandbox Code Playgroud)

我想用这个替换它:

bar
Run Code Online (Sandbox Code Playgroud)

换句话说,我想从DOM中删除span,并将其内容插入其位置.

我怎样才能实现这一点,尽可能使用代码?我想使用纯JavaScript,但jQuery也很好.

谢谢.

html javascript jquery dom

3
推荐指数
2
解决办法
2981
查看次数

Javascript正则表达式找到<a href标签

我正在使用此正则表达式尝试查找看起来像这样的链接,并仅用链接的开始和结束标记之间的内容替换它们.

正则表达式:

/<a class="tag_link"[^>]*>([^<]*)<\/a>/mg
Run Code Online (Sandbox Code Playgroud)

我在示例代码上测试了正则表达式并且它可以工作,但是当我尝试将它应用于object.innerHTML时它不会替换任何东西.怎么了?

代码:

document.getElementById(preview_div_ID).innerHTML.replace(/<a class="tag_link"[^>]*>([^<]*)<\/a>/mg, '$1');
document.write(document.getElementById(preview_div_ID).innerHTML);
Run Code Online (Sandbox Code Playgroud)

上面的"document.getElementById(preview_div_ID).innerHTML"中的一些示例html:

<h5 style="line-height: 9px; margin: 2px; ">
            <span style="font-size: 7px; line-height: 8px; ">
                Ost- (caseous) <a class="tag_link" href="javascript:;" onclick="open_tag('nekros', this);">nekros</a>
            </span>
        </h5>
Run Code Online (Sandbox Code Playgroud)

任何帮助深表感谢

javascript regex replace hyperlink

1
推荐指数
1
解决办法
1790
查看次数