-1

我正在经历一些非常令人沮丧的事情。我在我的网站上使用的所有 jQuery 都已完全停止工作。这正是发生的事情。

今天早上,一切正常。我将所有的 jQuery 都放在了一个外部的 scripts.js 文件中,我只是简单地在我的一个语句中添加了一些内容:

$(function() {
    if (location.pathname == "/shoppingcart.asp")
     || location.pathname == "/ShoppingCart.asp") {
          $('.v65-cart-tax-row').css("display", "none"); <!-- tax hide -->
          $('#v65-cart-empty-details-cell').before($('.v65-cart-total-estimate-row')); <!-- fix total price location -->
          $('#v65-cart-shipping-details-container').css("display", "none"); <!-- hide calculate shipping box -->
       }
    }
});

我只是在 if 语句中添加了一个 css 更改,并保存了文件,但是当我重新加载我的站点时,没有任何规则被应用到目标页面 (/shoppingcart.asp)。请记住,我所有的其他 jQuery 脚本都在同一页面上,并且它们都还在工作。

所以我尝试将此脚本移动到 HTML 文件中它自己的脚本标记中,但这仍然无法正常工作。所以我尝试测试一些东西。我删除了包含我所有 jQuery 的 scripts.js 文件的链接,并保存了该文件。然后,我只是将链接原样粘贴回文件中,保存它,现在它没有一个工作!

经过一番研究,我发现通常当 jQuery 停止工作时,这是因为如果他们更新了 jQuery 文件或其他什么,指向 jQuery 文件的链接就会停​​止有效。但是我使用的电子商务平台为我们提供了链接,它们是 //ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js 和 //ajax.googleapis.com/ajax/libs/ jqueryui/1.8.4/jquery-ui.min.js,他们似乎仍然工作得很好。另外,它仍然没有解释为什么它们在我编辑它们之后才停止工作。

更糟糕的是他们提供的脚本:

<script> 
$(document).ready(function () { 
jQuery('#breadcrumb').closest('td').remove(); 
}); 
</script> 

仍然可以正常工作,即使在我将其卸下并重新安装后也是如此。

有没有人有任何帮助或建议?我不知道该怎么办,并为此感到完全失败。整个夏天的工作一眨眼就消失了。

4

1 回答 1

6

你有一个语法错误:

if (location.pathname == "/shoppingcart.asp")
 || location.pathname == "/ShoppingCart.asp") {

应该:

if (location.pathname == "/shoppingcart.asp"
 || location.pathname == "/ShoppingCart.asp") {

最后你有一个额外}的。

Javascript 语法错误可能会破坏整个该死的事情。以后一定要检查你的 javascript 控制台,并使用像 jshint 或 jslint 这样的工具。

于 2013-08-15T19:49:49.580 回答