所以我试图使用DOMDocument从页面显示快照html。到目前为止,我的主页是从远程位置加载的
$dom = new DOMDocument('1.0', 'UTF-8');
$dom->loadHTML($remote);
然后我选择两个元素,我的头部区域和主要内容中的div,我将添加我的内容(html取自字符串变量)
$head = $dom->getElementsByTagName('head')->item(0);
$noticia2 = $dom->getElementById('content_home');
在此之后,我已将内容添加到我的脚本标记
$jquery = '$(document).ready(function(){ $("#feed_home").hide()});
if (window.location.hash) {
Destino = window.location.hash.replace(\'#!\', \'?\');
window.location.href = window.location.href.split(\'#\')[0] + Destino;
}
';
$script = $dom->createElement('script', $jquery);
$script_type = $dom->createAttribute('type');
$script_type->value = 'application/javascript';
$script->appendChild($script_type);
$head->appendChild($script);
然后我浏览了我的数据库,我收集了一些信息,我将使用mysql_fetch_array在一个大的$ content字符串中用html标签格式化。现在我的问题....每当我尝试将其添加到我的$ div节点内时,我无法将此内容视为HTML,因此我在显示此内容时遇到问题。
$div = $dom->createElement('div', $content);
$div_class = $dom->createAttribute('class');
$div_class->value = 'noticia-ajax';
$div->appendChild($div_class);
$noticia2->appendChild($div);
echo $dom->saveHTML();
我得到的是一个普通的页面,我的div“noticia-ajax”形成良好,然后在这个家伙里面我有
SOME TEXT <BR> AND NO HTML TAG TREATED AS HTML TAG <BR> SOMETHING LIKE THIS
当然,我想把所有这些标签都读成html!正确?
答案 0 :(得分:3)
我认为您需要做的是创建一个文档片段:
$div = $dom->createElement( 'div'); // No $contents here
$fragment = $dom->createDocumentFragment();
$fragment->appendXML( $content);
$div->appendChild( $fragment);