2

我正在使用 Squarespace CMS 系统的网站上工作,并添加了一些简单的 jQuery 来删除过滤内容时出现的一些自动添加的文本(特别是“条目中的”文本)。

在我将谷歌翻译脚本添加到页脚之前,这一切顺利,没有任何问题。现在“Entries in”文本的删除并不顺利——“Entries in”文本在页面加载时首先出现然后被删除,所以感觉有点跳跃。似乎页脚中的谷歌翻译脚本造成了干扰,我担心它可能会干扰我在项目进行时可能添加到站点的任何其他 jQuery。我很好奇我可以做些什么来确保这些自定义内容顺利加载?

我正在开发的网站(正在进行中)可以在 wohf.squarespace.com 上查看

我到目前为止的代码如下:

<script src="/storage/Scripts/jquery-1.3.2.min.js"></script>

<script type="text/javascript">
<!--

$(function(){ 

//***************************************
// Remove "Entries In" text
//***************************************
$('.journal-filter-header h2:contains(Entries in)').each(function(){ 
   var str = $(this).html(); 
   $(this).html(str.replace('Entries in','')); 
});


});
-->
</script>

...以及页脚中用于 Google 翻译的以下内容:

<div id="footerRight">
<div id="google_translate_element"></div>
<script>
function googleTranslateElementInit() {
  new google.translate.TranslateElement({
    pageLanguage: 'en'
  }, 'google_translate_element');
}
</script>
<script src="http://translate.google.com/translate_a/element.js?cb=googleTranslateElementInit"></script>
</div>

再次,非常感谢任何帮助!

4

3 回答 3

1

您真的应该尝试弄清楚如何在您的 CMS(服务器端)中更改它。JavaScript 仅旨在帮助您处理动态内容,而不是静态内容。

于 2010-02-06T22:56:37.840 回答
0

您可以尝试直接在页面末尾的脚本标记中运行修复功能,而不是在 jQuery“就绪”上下文中。换句话说,让您的代码在页面加载完成之前运行。(当然,这可能会也可能不会完全有帮助。)

于 2010-02-06T23:13:32.950 回答
0

你试过 jQuery.getScript() 吗?您应该能够延迟加载翻译脚本,直到您的“替换”完成。

http://api.jquery.com/jQuery.getScript/

于 2010-02-06T23:43:15.297 回答