2012-11-21 51 views
1

当我设置Sitecore并使用预览功能时,所有javascript都无法加载(如下拉效果,叠加等)。Sitecore预览无法加载javascript

只想确认sitecore的预览功能是否不支持javascript?否则,如何修复它?我在安装过程中错过了什么?谢谢。

+2

如果您使用的是其他JavaScript库,请查看是否存在冲突。 IE浏览器。 Sitecore使用(用于?)使用Prototype。如果您的JavaScript使用jQuery,并且没有在冲突模式下运行,并且/或者在您的javascript中使用了$而不是jQuery,那么可能会产生问题 – Holger

+0

您运行的是哪个版本的Sitecore? –

回答

1

几件事情要检查:

  • Sitecore的版本6.5之前使用JavaScript库,它结合了“$”变量中的原型。如果您在页面上使用jQuery,请使用显式的'jQuery'引用或'jQuery.noConflict()'。 6.5之后的版本使用jQuery,并且将它们的版本分配给一个没有冲突的变量('S $'iirc
  • 确保在你自己的javascript中没有任何错误,这听起来很明显,但是鉴于javascript的本质,
1

解决此问题的更好方法是使用当前最佳实践将JavaScript编写到独立的作用域中,并且不管使用哪个库都不会出现问题。

Avoiding jQuery’s noConflict() Mode with Prototype and Sitecore

var Example = {}; 

(function($){ 
    Example.test = function(){ 
     $("#worker").remove(); 
    } 

    $(function(){ // domloaded shortcut 
     Example.test(); 
    }); 
})(jQuery);