我需要使用纯javaScript将一些html附加到现有元素:
function create(htmlStr) {
var frag = document.createDocumentFragment(),
temp = document.createElement('div');
temp.innerHTML = htmlStr;
while (temp.firstChild) {
frag.appendChild(temp.firstChild);
}
return frag;
}
var target = document.querySelectorAll(".container-right");
var fragment = create(
'<div class="freetext"><p>Some text that should be appended...</p></div>'
);
document.body.insertBefore(fragment, document.body.childNodes[0]);
Run Code Online (Sandbox Code Playgroud)
它有点工作,但我有两个问题:
如何确保将html片段附加到具有类的div container-right而不仅仅是正文?将最后一行更改为document.body.insertBefore(fragment, target);不起作用.
如何在目标元素中的内容之后插入html - 在现有内容之后 - 如jQuery的append()?
任何帮助深表感谢.
例如我有文字:
"testestestestt testestestes <img src='image.jpg'>"
Run Code Online (Sandbox Code Playgroud)
我想写函数检查字符串是否是img标签并返回true
我正在尝试生成这样的节点:
<div layout horizontal></div>
Run Code Online (Sandbox Code Playgroud)
使用DOM API.
我正在尝试这样的事情:
var d = document.createElement("div");
d.setAttribute(...);
Run Code Online (Sandbox Code Playgroud)
但从来没有真正设法生成我想要的东西.任何想法如何做到这一点?
谢谢.
我正在使用这个答案将 HTML 字符串转换为 Angular 中的 DOM 元素。
问题是我无法获取 的属性Node。getAttribute()无法使用,因为 typescript 会抱怨No property getAttribute on Node.
代码如下(简化)。
import { AfterViewInit, Renderer2 } from '@angular/core';
export class MockComponent implements AfterViewInit {
constructor(private renderer: Renderer2) {}
private mockString = '<a href="#test1">test 1</a>'
ngAfterViewInit(): void {
const template = this.renderer.createElement('template');
template.innerHTML = this.mockString.trim();
const anchorNodes: NodeList = template.content.querySelectorAll('a');
const anchors: Node[] = Array.from(anchorNodes);
for (const anchor of anchors) {
// how to get attributes of anchor …Run Code Online (Sandbox Code Playgroud) 我正在尝试向div添加ajax响应(它是带有表格,表单等的HTML代码).
在FF innerHTML工作完美,但在IE中,它给了我一个未知的错误.
我尝试了很多东西,但是当我添加jQuery并.html在div上运行方法我想要插入代码时,我才能使用它.
任何人都在关心为什么这个有用而不是简单innerHTML?我试着查看.html()代码,但我想我不是JS的优秀,因为我不明白它在做什么.
我有文件(组件树)'m',我试图存储在html5的本地存储中.我尝试将其设置为本地存储.但当我将其取回时,此m已更改为[object Document].如何将文档存储到本地存储并将其作为文档本身检索?
以下是我尝试过的代码


应用程序向服务器发送ajax请求以退出日历的事件,并在请求的onsuccess中收到xhtml的dom表示.当用户进入下周视图时,应用程序必须从本地存储中撤消该事件.要从js文件向客户端发送响应,dom表示也是必要的.因此我们需要将dom表示存储到localstorage.
我的要求是在第一张图片的控制台,您可以看到从文档m中检索到'k'并作为响应发送到客户端.所以,我想要的是将此k或m存储到本地存储,以便我可以操作它在同一个js文件中.这个代码位于一个单独的js文件中,该文件在xhtml文件中使用.
我正在使用primefaces 4.0,jsf 2.1.
当我使用
localStorage.setItem( "calendarevents",JSON.stringify(K));
我得到一个错误'将循环结构转换为json'.
假设我有以下字符串:
var myString = "<p>hello</p><script>console.log('hello')</script><h1>Test</h1><script>console.log('world')</script>"
Run Code Online (Sandbox Code Playgroud)
我想使用split来获取包含脚本标记内容的数组.例如,我希望我的输出为:
["console.log('hello')", "console.log('world')"]
Run Code Online (Sandbox Code Playgroud)
我试过myString.split(/[<script></script>]/)但是没有得到预期的输出.
任何帮助表示赞赏.
我正在尝试找出如何用 HTML 标签替换页面上与某个短语匹配的任何文本实例 - 内容应保持不变。
bold("Hello")
Run Code Online (Sandbox Code Playgroud)
上面的代码应该替换为:
<b>Hello</b>
Run Code Online (Sandbox Code Playgroud)
这是我当前正在使用的代码:
node.data = node.data.replace('bold("','<b>');
node.data = node.data.replace('")','</b>');
Run Code Online (Sandbox Code Playgroud)
这样做的问题是,<b>它不是创建标签,而是将<和转换>为它们的 HTML 实体 - << > 。
")此外,用替换所有实例似乎不切实际</b>。
实现这一目标的最佳方法是什么?
我将不胜感激任何帮助,谢谢!
我在javascript中使用了html字符串并使用正则表达式我想删除html标签中的id,style和class属性,例如我有:
New York City.<div style="padding:20px" id="upp" class="upper"><div style="background:#F2F2F2; color:black; font-size:90%; padding:10px 10px; width:500px;">This message is.</div></div>
Run Code Online (Sandbox Code Playgroud)
我希望这个String成为:
New York City.<div><div>This message is.</div></div>
Run Code Online (Sandbox Code Playgroud) 如何在Mootools中从字符串(从ajax传递)创建DOM元素?
在jQuery中,一个简单的解决方案是 $( elements )
var elements = '<i>This is italic</i><b>this bold</b>...';
Run Code Online (Sandbox Code Playgroud)