首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在<head>标记中动态插入javascript

在<head>标记中动态插入javascript
EN

Stack Overflow用户
提问于 2010-04-30 20:38:08
回答 1查看 1.3K关注 0票数 0

我正在使用CEWP (webpart)并将此代码放入其中。但这段代码不会在<head>标记中运行。我需要在<head>标签中插入这段代码,

代码语言:javascript
复制
<script src="http://code.jquery.com/jquery-latest.js"></script>

<script type="text/javascript">
$("*").each(function () { if ($(this).children().length == 0) { $(this).text($(this).text().replace('Respuesta','Responder')); } });
</script>

我该怎么做?此代码将如何在CEWP网络部分中工作?

EN

回答 1

Stack Overflow用户

发布于 2010-04-30 21:15:39

首先,如果将代码设置为在文档就绪时运行,则可以将代码放入<head>中。

然而,它仍然不起作用。你在遍历所有标签。包括<html>,这将是$('*')选择的第一个。

因此,您读取了<html>元素中的所有文本(即。(整个文档文本),对其执行字符串替换,然后将其写回html text()。用一个简单的文本字符串替换<html>元素的所有以前的文本和元素内容。从而破坏了页面上的所有其他元素。糟了。

您要做的是查找每个文本节点并在其上执行单独的字符串替换:

代码语言:javascript
复制
$(document).ready(function() {
    $('*').each(function() {
        for (var i= this.childNodes.length; i-->0;) {
            var child= this.childNodes[i];
            if (child.nodeType===3) // TEXT_NODE
                child.data= child.data.replace(/Respuesta/g, 'Responder');
        }
    });
});

(请注意,这里仍然有许多可能的边缘情况,表单字段和其他元素中的文本更改可能无法达到预期的效果。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2747532

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档