标签: outerhtml

SVG元素的outerHTML

为什么我们不能用element.outerHTML属性获取svg元素的outerHTML ?

这种方式是最好的http://jsfiddle.net/33g8g/获取svg源代码?

javascript svg dom outerhtml

21
推荐指数
4
解决办法
7941
查看次数

16
推荐指数
3
解决办法
6万
查看次数

如何返回DOMDocument的外部html?

我正在尝试替换字符串中的视频链接 - 这是我的代码:

$doc = new DOMDocument();
$doc->loadHTML($content);
foreach ($doc->getElementsByTagName("a") as $link) 
{
    $url = $link->getAttribute("href");
    if(strpos($url, ".flv"))
    {
        echo $link->outerHTML();
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,outerHTML当我试图获取完整超链接的html代码时不起作用<a href='http://www.myurl.com/video.flv'></a>

任何想法如何实现这一目标?

php dom outerhtml

15
推荐指数
3
解决办法
9992
查看次数

获取包含属性的开始标记 - 没有innerHTML的outerHTML

我想从DOM中检索某个带有其属性的标记元素.例如,来自

<a href="#" class="class">
  link text
</a>
Run Code Online (Sandbox Code Playgroud)

我希望得到<a href="#" class="class">,可选择关闭</a>,作为字符串或其他对象.在我看来,这类似于检索.outerHTML没有的.innerHTML.

最后,我需要通过jQuery包装其他一些元素.我试过了

var elem = $('#some-element').get(0);
$('#some-other-element').wrap(elem);
Run Code Online (Sandbox Code Playgroud)

.get()返回包含其内容的DOM元素.也

var elem = $('#some-element').get(0);
$('#some-other-element').wrap(elem.tagName).parent().attr(elem.attributes);
Run Code Online (Sandbox Code Playgroud)

失败,因为elem.attributes返回a NamedNodeMap不能与jQuery一起工作,attr()我无法转换它.承认上面的例子不是很有意义,因为它们还复制了元素的不再唯一ID.但有什么简单的方法吗?非常感谢.

javascript jquery dom innerhtml outerhtml

14
推荐指数
2
解决办法
2444
查看次数

为什么outerHTML会带回<! - - - >评论?

我在这里有一个jsfiddle - http://jsfiddle.net/stevea/QpNbu/3/ - 收集outerHTML所有有的元素class='active'.令我惊讶的是,即使我注释掉了一些HTML,例如:

<!--      <div>'Some inner text'</div>  -->
Run Code Online (Sandbox Code Playgroud)

outerHTML仍然把它带回来!这还不能在DOM中,所以我想知道在哪里outerHTML.

感谢您的任何见解.

html javascript jquery outerhtml

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

返回被outerHTML改变的元素

我创建了一个通用元素

var element = document.createElement(null);
document.body.appendChild(element);
Run Code Online (Sandbox Code Playgroud)

之后,使用 externalHTML 更改该元素

element.outerHTML = "<div> hello there </div>";
Run Code Online (Sandbox Code Playgroud)

元素正确显示。然而,变量本身“元素”并不以任何方式反映变化。检索该特定元素的唯一方法似乎是做类似的事情......

element.outerHTML = "<div id='hi'> hello there </div>";
element = document.getElementById("hi");
Run Code Online (Sandbox Code Playgroud)

看起来很丑。有没有更好的方法和/或我错过了什么?

javascript dom outerhtml

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

outerHTML在IE中未定义

我的代码从Ajax调用中获取JSON,该调用包含XML,并通过它读取一些信息.

虽然XML的解析在Chrome中运行良好,但它不在IE中,因为在IE中outerHTML返回undefined.

我已经经历了几个帖子并尝试了几种可能的解决方案但没有成功.

JavaScript代码是:

$.ajax({
    url: 'getJSONwithXML.do',
    type:'POST',
    data:'',
    dataType: 'json',
    cache: false
}).done(function(data) {
    var jsonResp = JSON.parse(data.data.respuesta);
    var parser = new DOMParser();
    var xmlDoc = parser.parseFromString(jsonResp,"text/xml");
    var texto = $(xmlDoc).find('texto').prop('outerHTML');
    console.log(texto); // <--- undefined in IE
    $('body').append('<div>' + texto + '</div>');
});
Run Code Online (Sandbox Code Playgroud)

我得到的xml jsonResp是:

<?xml version="1.0" encoding="UTF-16"?>
<envio>
    <version>1.0.0</version>
    <anuncios>
        <remitente>
            <nodoRemitente>Nodo Remitente</nodoRemitente>
        </remitente>
        <anuncio>
            <emisor>
                <nodoEmisor>Nodo Emisor</nodoEmisor>
            </emisor>
            <metadatos>
                <id>16249</id>
            </metadatos>
            <contenido>
                <texto>
                    <p>
                        Notificación de prueba
                    </p>
                    <p>
                        Notificación de prueba …
Run Code Online (Sandbox Code Playgroud)

javascript jquery internet-explorer undefined outerhtml

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

设置document.body.outerHTML会创建空头.为什么?

重置outerHTML属性document.body有一个奇怪的副作用:它<head></head>在DOM之前添加额外的空,就在之前body:

head { display: inline; counter-increment: h; border: 1px solid; }
head:last-of-type::after { content: 'Head elements count: ' counter(h); }
[onclick]::after { content: attr(onclick); }
Run Code Online (Sandbox Code Playgroud)
<button onclick="document.body.outerHTML=document.body.outerHTML"></button>
Run Code Online (Sandbox Code Playgroud)

所有浏览器似乎都是一致的.我被告知它被指定为这种方式,但是无法在这个问题上挖掘权威的标准立场,甚至在讨论档案中都​​没有提及.你知道这方面的背景,还是有一些技术原因必须这样?任何的想法?

html javascript dom outerhtml

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

为什么获取外部HTML不起作用?

基于这个问题,我尝试以两种不同的方式获取外部HTML .不幸的是,他们都没有给出预期的结果:

HTML:

<div id='my_div'>Hello</div>
Run Code Online (Sandbox Code Playgroud)

JS:

$(function() {
    document.write('[' + $('#my_div').clone().wrapAll("<div />").parent().get(0).innerHTML + ']<br />');
    document.write('[' + (new XMLSerializer().serializeToString(document.getElementById('my_div'))) + ']');
});
Run Code Online (Sandbox Code Playgroud)

输出是:

[
Hello
]
[
Hello
]
Run Code Online (Sandbox Code Playgroud)

我期待以下结果: <div id='my_div'>Hello</div>

这里有实例

我究竟做错了什么 ?

html javascript jquery outerhtml

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

在浏览器中显示HTML标记而不进行渲染

开始实现Javascript,我需要进行故障排除,并希望将HTML输出到屏幕而不进行渲染.我可以通过访问元素(在IE中)

document.getElementById("test").outerHTML
Run Code Online (Sandbox Code Playgroud)

我想,但我不能证明我能确定的是什么.

那么我该怎么做才能让document.write显示整个元素,包括标签?

javascript debugging outerhtml

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