在chrome中,ie和ff赢得一个JQuery ajax脚本就像一个魅力。在Safari和Firefox中,它没有

时间:2011-08-25 10:17:06

标签: jquery cross-browser modernizr modx-revolution

Jquery javascript作为scripts.js中所有inlinescripts的一部分 与Modernizr2.0

的标准样板组合

在macintosh上的chrome 13.0.782.215中,即7/8和mozilla 3.6.20 for windows,脚本就像一个魅力。即9无法测试。

在Safari和Firefox中,它不是吗?

这是脚本:

jQuery(document).ready(function(){  
jQuery("a#deletefromcart").click(function(event){
event.preventDefault();
var did = jQuery(this).data('delid');
jQuery.ajax({
type: "GET",
url: "assets/components/cart/deletefromcart.php",
data: "id=" + did
});
jQuery("tr.hide"+did).hide("slow");
location.reload(true);
});

这里的wat firebug报道了mozilla

404 Not Found

1.23s

jQuery is not defined
anonymous()scripts.js (regel 22)
anonymous()jquery....min.js (regel 17)
anonymous()jquery....min.js (regel 16)
jQuery("tr.hide"+did).hide("slow");
scripts.js (regel 22)


"NetworkError: 404 Not Found - http://secure.hurby.com/cart/assets/components/cart/deletefromcart.php?id=415"

用cache = false做了一些实验 成功后加载但没有运气。

我似乎无法指出什么是错的,更多的是艺术家,然后是开发人员 请帮我把这个脚本重写成跨浏览器兼容的东西。

太阳是免费的,所以:

奖励将是你的 修复此问题的人将收到一份Ciclee印刷品,在我的新网站上选择144件作品之一。如果能让它发挥作用,就不会卖掉任何东西。

的Gr Hurby


是的文件存在于Juhana中。 Roselan,我将参数更改为您建议的值。仍然是相同的行为。 Chrome,ie和moz win仍然可以使用新参数。

但仍然使用safari和moz for mac拒绝这样做。

在购物车中添加或删除画作不需要登录,因此您可以自己测试

GR Hurby

PS。 http://secure.hurby.com/schilderijen,-kaarten-en-giclee-prints/werken/braaaf.html

这都是荷兰人所以希望它只是点击“在winkelwagen”按钮,你应该被重定向到购物车。在这里你会找到这个项目。有时它需要完成两次,之后它工作正常。通常你会注册去结账。

单击X(在sfari和ff mac中断开的功能)应该删除该项目,但在Safari和ff mac中不会。


好的Tony,

我觉得你有东西* - )

文件路径应为: http://secure.hurby.com/assets/components/cart/deletefromcart.php http://secure.hurby.com/cart/assets/components/cart/deletefromcart.php

不知何故,ff和safari添加:cart / before。

所有文件都是同一个域。

现在它找到了为什么在这两个浏览器中发生这种情况以及如何将代码更改为有效的代码。真的没有任何线索......

GR HUrby


Mac上Moz的正确路径(未获得提及的404)=

/assets/components/cart/deletefromcart.php而不是

资产/组件/购物车/ deletefromcart.php

但现在moz mac中的firebug说脚本错了:

jQuery没有定义 jQuery的( “tr.hide” +一样).hide( “慢”);

并且在路径前面设置/时,Windows IE停止工作 Mac上的chrome和windows上的moz仍然没问题。

所以用“/”3个浏览器正常工作。 没有“/”只有两个。

这里是现在代码的状态:

jQuery(document).ready(function(){  
jQuery("a#deletefromcart").click(function(event){
event.preventDefault();
var did = jQuery(this).data('delid');
jQuery.ajax({
type: "GET",
url: "/assets/components/cart/deletefromcart.php",
data: {id: did}
});
jQuery("tr.hide"+did).hide("slow");
location.reload(true);
});

1 个答案:

答案 0 :(得分:0)

FireBug输出中的路径是否正确?即“购物车”应该包含两次吗?

http://secure.hurby.com/ /资产/组件/的 /deletefromcart.php

也许您需要将网址更改为

/cart/deletefromcart.php

而不是

assets/components/cart/deletefromcart.php

或者,它可能是跨域问题。您是否尝试从secure.hurby.com以外的网站调用php页面?