使用javascript更改文本

使用javascript更改文本,javascript,Javascript,我的网站是基于一个平台,我可以改变一点布局,但某些部分会自动渲染代码。我的问题?它是英文的,我需要西班牙文的。我可以在网站主体之前添加javascript,但是我不能直接更改html,所以我想我可以使用onload来更改文本。你们觉得怎么样?如果有帮助的话,我也可以使用jQuery 我需要改变这一点: <div class="c_wrapper"> <h3 class="d_customize_title" align="left"> <

我的网站是基于一个平台,我可以改变一点布局,但某些部分会自动渲染代码。我的问题?它是英文的,我需要西班牙文的。我可以在网站主体之前添加javascript,但是我不能直接更改html,所以我想我可以使用onload来更改文本。你们觉得怎么样?如果有帮助的话,我也可以使用jQuery

我需要改变这一点:

 <div class="c_wrapper">
     <h3 class="d_customize_title" align="left">
         <span id="left_title">
            Playera Max
        </span>
         <a onclick="d.showProductInfo(); return false;" href="#">
            Product details
        </a>
    </h3>
 </div>

普拉埃拉马克斯酒店
为此:

<div class="c_wrapper">
    <h3 class="d_customize_title" align="left">
        <span id="left_title">
            Playera Max
        </span>
        <a onclick="d.showProductInfo(); return false;" href="#">
            Detalles del producto
        </a>
    </h3>
</div>

普拉埃拉马克斯酒店
两个选项:

  • 在主题(平台)中找到呈现代码的部分,然后从那里更改它(最佳选项)

  • 使用jQuery替换
    html


  • 例如:

    
    $(“.c_包装器a”).text(“Detalles del producto”);
    
    工作示例:

    正如其他人所提到的,使用Javascript来实现这一点有点困难,但这里有另一种不用jQuery的方法:

    // helper to make sure we get a sibling that is an element
    function getNextSibling(node){
        sibling = node.nextSibling;
        while (sibling.nodeType != 1){
            sibling = sibling.nextSibling;
        }
        return sibling;
    }
    
    // set text
    getNextSibling(document.getElementById('left_title')).innerHTML = 'Detalles del producto';
    

    演示:

    这非常适合jQuery,如果您在最初加载内容时无法控制它,那么它可能是最好的选择。以下是您的示例的工作示例:

    $(function(){
          $("#left_title + a").text("Detalles del producto");
    });
    

    通过JavaScript修改文本是绝对的最后手段,因为这意味着禁用JavaScript的用户和搜索引擎将看到大多数用户的不同内容。这可能有助于告诉我们您使用的平台。对于其中的许多,有一个“正确”的方法来做这件事。我是一个如此新的人,我应该把代码放在哪里?在之前?@JoseRuacho您可以将代码放在标记中的某个位置,标记中的某个位置可以正常工作。@JoseRuacho Mira mi ultima Dedication工作得很好!你不知道我做了多少,非常感谢!
    // helper to make sure we get a sibling that is an element
    function getNextSibling(node){
        sibling = node.nextSibling;
        while (sibling.nodeType != 1){
            sibling = sibling.nextSibling;
        }
        return sibling;
    }
    
    // set text
    getNextSibling(document.getElementById('left_title')).innerHTML = 'Detalles del producto';
    
    $(function(){
          $("#left_title + a").text("Detalles del producto");
    });