带有 Facebox 的 Onclick 在 IE8 中不起作用
我正在开发一个包含 Facebox 的网站,用于加载购物篮流程的内容。
当向购物篮添加一些东西并单击绿色愿望清单按钮时,我在 IE8 中加载它时遇到问题,它适用于所有现代浏览器。谁能明白为什么它不会在 Facebox 中加载 IE8 中的内容吗?
我在愿望清单按钮上使用此代码:
<div onclick="location.href='wishlist.php?basket=true'" rel="msgbox" id="mybasket">
是否有足够的信息来查看网站链接上的源代码?如果您需要更多代码,请询问。
在使用 Chrome 的 Mac 上 - 正如您所看到的,当单击绿色心愿单按钮时,facebox 已正常打开。
在使用 IE8 的 PC 上 - 单击绿色愿望清单按钮时,facebox 将打开,但不会加载内容。
I'm working on a website that includes Facebox to load content for a basket process.
When adding something to the basket and clicking the green wishlist button I'm having trouble with it loading in IE8, it works on all the modern browsers. Can anyone see why it won't load content in IE8 in the facebox?
I'm using this code on the wishlist button:
<div onclick="location.href='wishlist.php?basket=true'" rel="msgbox" id="mybasket">
Is it enough info to view source on the link to the site? If you need any more code then please ask.
On a Mac using Chrome - as you can see the facebox has opened fine when clicking on the green wishlist button.
On a PC using IE8 - when clicking on the green wishlist button the facebox opens but doesn't load the content.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
这是返回数据的问题,最后有一个额外的
。
在以
开头的行中,在注释之后的末尾,是额外的
这是破坏你的 html,IE 不知道如何修复,但其他浏览器可以。
This is a problem with the returned data, You have an extra
</div>
at the end.In the line of starting with
<div id="msgbox_actions">
, at the end of it after the comments, is the extra</div>
This is breaking your html, which IE doesn't know how to fix, yet other browsers are able to.
可能不是问题,但当我单击按钮时,我的 FireBug 控制台告诉我:
“NetworkError: 404 Not Found - http://dtrmedical.com/xfade2.css"
由于某种原因,它没有找到您的 CSS 文件。
Probably not the problem but my FireBug console tells me this when I click on the button:
"NetworkError: 404 Not Found - http://dtrmedical.com/xfade2.css"
It is not finding your CSS file for some reason or another.
您的
onclick
事件未正确绑定到您的购物车div
。我不知道到底为什么; IE8 在正确解析复杂的 HTML 属性方面可能存在缺陷。不要内联定义事件(在 HTML 标签内部),而是尝试通过 jQuery 来完成。将以下代码添加到
$.ready
正文的开头。附带说明一下,您应该始终避免在 HTML 中定义任何事件处理,而应采用我上面描述的方法。这样做不仅意味着所有“操作”代码都将位于同一个位置,而且还为您提供了更好的跨浏览器支持(特别是当您利用 jQuery 这样的库时)。
Your
onclick
event isn't binding properly to your shopping cartdiv
. I'm not sure why, exactly; IE8 may be buggy about parsing complicated HTML attributes like that properly.Instead of defining the event inline (right inside of the HTML tag), try doing it via jQuery, instead. Add the following code to the beginning of your
$.ready
body.As a side note, you should always avoid defining any event handling in your HTML, instead taking the approach I describe above. Doing so not only means that all of your "action" code will be in once place, but it also affords you greater cross-browser support (especially when you leverage a library like jQuery).