2


我遇到了javascript文件的问题,即。某些脚本不起作用,具体取决于我在 html 文件中订购它们的方式。这里是演示,只是为了向您展示我的意思: http ://testground.uphero.com/test/

正如您在源代码中看到的那样:

<script type="text/javascript" src="js/prototype.js"></script> 
<script type="text/javascript" src="js/scriptaculous.js?load=effects,builder"></script> 
<script type="text/javascript" src="js/lightbox.js"></script> 
<script src="http://code.jquery.com/jquery-1.4.4.js" type="text/javascript"></script> 
<script type="text/javascript" src="js/grayscale.img.js"></script>

如果我按此顺序放置标签,灰度 img 将起作用,而 Lightbox 不会,但如果我将 jquery 链接移动到顶部,灰度将不再起作用,但 Lightbox 会起作用。

所以我想要的是让他们都工作。有没有什么办法。提前致谢!:-)

4

2 回答 2

1

正如我在评论中所说:你要避免使用两个框架,但是:

如果你真的必须同时使用两者,请使用 firebug(或其他浏览器的类似工具)来查看产生的 javascript 错误 - 也许你必须为这两个框架激活“兼容性/无冲突模式”,这样它们就不会杀死每个其他。

查看jQuery 文档以获取有关此的更多信息。

于 2011-01-27T13:05:06.800 回答
0

您的问题可能是由于与 Prototype 和 jQuery 使用的命名空间冲突——它们都引用$为它们命名空间的快捷方式。尝试同时使用这两个库,您将不可避免地遇到冲突。

这是一篇关于将 jQuery 与其他库一起使用的有用文章,包括如何解决该问题:

http://docs.jquery.com/Using_jQuery_with_Other_Libraries

但是,您需要小心确保您使用的插件在正确的范围内被引用,以便每个库正常工作。如果可能的话,坚持只使用一个库可能更明智(有很多可用于 jQuery 的灯箱克隆)。

于 2011-01-27T13:09:54.160 回答