Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php load()删除highlight.js类_Php_Jquery_Ajax_Highlight.js - Fatal编程技术网

Php load()删除highlight.js类

Php load()删除highlight.js类,php,jquery,ajax,highlight.js,Php,Jquery,Ajax,Highlight.js,在我的php聊天中,每次提交消息时,我都使用.load()刷新ajax请求中的div内容。调用.load方法后,highlight.js类将消失 Highlight.js init $(document).ready(function() { hljs.configure({useBR: true}); $('div.sendermsg , div.receivermsg').each(function(i, block) { hljs.highlightBlock(block);

在我的php聊天中,每次提交消息时,我都使用
.load()
刷新ajax请求中的div内容。调用.load方法后,highlight.js类将消失

Highlight.js init

$(document).ready(function() {

hljs.configure({useBR: true});
$('div.sendermsg , div.receivermsg').each(function(i, block) 
  {
  hljs.highlightBlock(block);
  });

});
聊天室

foreach($n as $x) { if ($x['username'] == $username) {?>

<tr>
<td class="sendertd">
<div class="sendermsg"><?php echo $x['message']; ?></div>
</td>
</tr>

<?php }

else { ?>

<tr>
<td class="receivertd">
<div class="receivermsg"><?php echo $x['message']; ?></div>
</td>
</tr>

<?php }
} ?>
在ajax调用之前(如果发布的消息是javascript,则仅举一个示例)

在ajax调用之后

有什么想法吗

编辑 引自jquery.com

使用不带后缀选择器表达式的URL调用.load()时,在删除脚本之前,内容将传递给.html()。这将在脚本块被丢弃之前执行它们。但是,如果使用附加到URL的选择器表达式调用.load(),则会在更新DOM之前剥离脚本,因此不会执行这些脚本。

所以我试过了

$(".tbody").load(location.href+" .tbody > *",function(){
$.getScript("js/highlight.min.js"); 
});

仍然不工作

.load()


.load()

$(".tbody").load(location.href+" .tbody > *",function(){
$.getScript("js/highlight.min.js"); 
});
$(".tbody").load(location.href+" .tbody > *");
$.getScript("http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.11.0/highlight.min.js", function () {
$('div.sendermsg , div.receivermsg').each(function(i, block) {
    hljs.highlightBlock(block);
});
});