我在页面上有以下html:
<h1 class="theme-color-3">Knowledge Portal Site</h1>
这是动态呈现的。我不想在“知识门户”之后使用“站点”这个词。我不知道“站点”这个词是硬编码的,所以我写了下面的jquery代码来删除那个词。
$(document).ready(function() {
$('h1.theme-color-3').html($('h1.theme-color-3').html().replace('Site',''));
});
但问题在于,因为此代码仅在整个页面加载完成后执行,所以“站点”一词显示一段时间然后消失。 有没有办法防止这种情况?
谢谢
答案 0 :(得分:2)
在<script>
元素后面放置一个<h1>
元素,如下所示:
<h1 class="theme-color-3">Knowledge Portal Site</h1>
<script type="text/javascript">
$('h1.theme-color-3').text($('h1.theme-color-3').text().replace('Site',''));
</script>
这将确保在解析元素后立即处理脚本,因此请确保jQuery脚本位于<head>
或至少在文档的后面。另外,如果您没有应用HTML,请使用text()
代替html()
。效率更高。
答案 1 :(得分:0)
您可以使用CSS将元素设置为display:none
,但这样可以在没有元素的情况下关闭javascript。
基本上没有好的解决方案。