2

我正在尝试为我的一个朋友创建一个简单的投资组合网站,该网站基于他的绘画和绘画。布局相对简单,但事实证明很难实现。我在页面上有三个 jquery 脚本,每个脚本都执行特定的功能。

1) bgStretcher - 拉伸一系列背景图像以填充用户的窗口。
2)折叠 - 简单的可折叠菜单系统
3)galleryview - 基本没有多余的幻灯片画廊

目前,bgstretcher 和折叠位于一个名为 nav.shtml (http://yungchoi.com/nav.shtml) 的页面上,画廊位于 gallery.shtml(http://yungchoi.com/gallery.shtml) 上。Seperatley 它们工作正常,但是当我通过 SSI ( test.shtml ) 调用导航页面时,代码似乎遇到问题并被禁用。

我发现的解决方案都导致在 jquery 中使用 noConflict 函数(http://stackoverflow.com/questions/2656360/use-multiple-jquery-and-jquery-ui-libraries),(http://hubpages. com/hub/How-to-use-jQuery_noConflict),但每次我尝试插入它并更改我的代码时,一切都会再次混乱。我还将每个脚本的文件组织到单独的文件夹和目录中,但这也无济于事。

我的经验是图形和网页设计,所以我的编码技能不是最好的。我确实知道基础知识,但是重写 jquery 代码并不是我学过的东西,所以我可能不明白如何正确解决这个问题。如果有人可以清楚而轻松地解释我需要做什么才能使这些都一起工作,我将不胜感激。

谢谢!

4

3 回答 3

3

您的页面中仍然加载了多个版本的 jQuery。

消除:

<script type="text/javascript" src="support/bgstrecher/jquery-1.3.2.min.js"></script>

<script src="support/collapse/jquery-1.2.1.min.js" type="text/javascript"></script>

您还应该删除:

<script type="text/javascript">
  $.noConflict();
  // Code that uses other library's $ can follow here.
</script>

& - (因为您只需要打包或解包版本,而不是两者都需要)

<script type="text/javascript" src="galleryview/jquery.galleryview-2.1.1.js"></script>

看看是否有帮助。

如果您还打算使用类似于 jQuery 的其他库,例如 MooTools、Dojo 或 Prototype,则只需要 noConflict。你不太可能需要 & 如果你这样做,你将需要重新编码以使用 jQuery 函数而不是 $。

您遇到的问题是所有这些 jQuery 包含的内容都覆盖了插件所附加的先前版本的 jQuery,因此当您调用它时该函数不再存在。

于 2011-01-24T23:31:15.170 回答
0

为什么要加载 Jquery 两次?

首先是 1.4.2 分钟的文件,然后是完整的文件?

于 2011-01-24T23:00:26.347 回答
0

您仍然可以多次调用 jQuery(即使文件不在同一个目录中)。以同样的方式,您调用“galleryview/jquery.galleryview-2.1.1.js”两次(第二个文件刚刚打包)。

顺便说一句,我的错误控制台告诉我:

“错误:jQuery.timer 未定义源文件:http: //yungchoi.com/galleryview/jquery.timers-1.2.js 行:135”

你确定你需要这个计时器插件吗?目前,您似乎包含了太多脚本。尝试删除所有不需要的文件(你应该只保留一个版本的jquery。但是如果你使用的某些插件不兼容,你会遇到越来越多的兼容性问题)。

于 2011-01-24T23:34:20.600 回答