javascript - 水平 Accordion 中的 Jquery 选择器

标签 javascript jquery

我正在尝试构建一个最终将包含更复杂数据(iframe)的简单水平 Accordion ...问题是我希望每个 Accordion 选项卡的大小特定于它包含的数据,所以我'我正在尝试编辑已有的内容(有些选项卡比其他选项卡大)。当用户将鼠标悬停在任何选项卡上时,我想将该选项卡扩展到 50%(无论其之前的大小如何)。一切正常,但问题是我无法弄清楚如何在鼠标移出后返回到选项卡的原始宽度。现在我将面板缩小到 10% 来说明问题。如果您循环浏览页面然后重新加载,您就会明白我的意思。有什么想法吗?

http://www.brianvargo.com/test.html

最佳答案

您可以在某处保存原始宽度。这是一种方式(使用您的代码):

$(document).ready(function(){  
    $("ul li").mouseover(function(){
        if (this.originalWidth == undefined) this.originalWidth = $(this).width();
        $(this).stop().animate({width:'50%'},{queue:false, duration:500,}) 
    });  

    $("ul li").mouseout(function(){  
        $(this).stop().animate({width: this.originalWidth},{queue:false, duration:600})  
    });  
}); 

未经测试,您可能会选择不同的方式来保存它,但总体思路就在那里。

关于javascript - 水平 Accordion 中的 Jquery 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6365768/

相关文章:

Javascript正则表达式仅检查字符串开头的数字和减号

javascript - Jquery 单击成功或完成时触发

javascript - 删除表格中按钮单元格之间的空间

javascript - 使用单个 AJAX 请求同时保存多个记录?

javascript - Chrome 中的 slimscroll 鼠标单击和滚动问题

javascript - 我在 jQuery 中有一个分步过程,有更好的方法来编码吗?

javascript - 我需要读取一个用 TypeScript(An Angular 模块)编写的文件,并以编程方式将代码添加到原始文件中。关于我该怎么做的任何想法?

javascript - 控制 console.log 的函数而不返回

javascript - 使用 jQuery 和插件使表格可排序

PHP 脚本无法读取 ajax post 值以运行查询