我感觉到你的痛苦!我最近经历了一个荒谬的故障排除,我在主页和页面布局中逐块删除了所有内容(这实际上是在SharePoint中),不断减少页面.
最终结果是没有 html文档的doc类型(一些开发人员删除了它).缺少doctype意味着IE 7以怪癖模式运行,而JQuery Accordion发出的内联CSS表现得很时髦.
考虑添加:
在您的母版页或html文档的顶部(如果尚未定义doctype).
实际上有一个专门用于Quirks Mode行为的整个站点.您可以在此处查看有关Quirks模式的文章.我写了一篇帖子,其中有关于故障排除的更多周边信息.
我感觉到你的痛苦!我最近经历了一个荒谬的故障排除,我在主页和页面布局中逐块删除了所有内容(这实际上是在SharePoint中),不断减少页面.
最终结果是没有 html文档的doc类型(一些开发人员删除了它).缺少doctype意味着IE 7以怪癖模式运行,而JQuery Accordion发出的内联CSS表现得很时髦.
考虑添加:
在您的母版页或html文档的顶部(如果尚未定义doctype).
实际上有一个专门用于Quirks Mode行为的整个站点.您可以在此处查看有关Quirks模式的文章.我写了一篇帖子,其中有关于故障排除的更多周边信息.
与IE7中的所有问题一样,具有格式良好的标准HTML标记.最终工作的是删除autoHeight: "false"
和使用clearStyle: "true"
.
我还创建了一个IE <8版本的手风琴初始化:
if ( $.browser.msie && $.browser.version < 8 ) { //ie<8 version } else { //version for the good browsers }
我实际上已经避免使用手风琴插件了,因为我发现它对我的需求有点不灵活.我发现最简单,最灵活的手风琴就像:
var accordion = function(toggleEl, accEl) { toggleEl.click(function() { accEl.slideToggle(function() { }); return false; }); }
对于你的例子你会像这样使用它:
$(document).ready(function() { new accordion($("a.accordion-label"), $("ul. linklist")); });
你可以使用它作为模板并构建css类添加,回调和其他有用的东西,但我发现最终这样做比使用手风琴插件更容易.
编辑:带回调函数的示例代码
var accordion = function(toggleEl, accEl, callback) { toggleEl.click(function() { accEl.slideToggle(callback); return false; }); } $(document).ready(function() { new accordion($("a.accordion-label"), $("ul. linklist"), function() { /* some callback */ }); });