亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

jquery手風琴效果有幾處不解之處

jquery手風琴效果有幾處不解之處

liujiachang 2016-08-16 21:02:46
$(function() { var Accordion = function(el, multiple) { this.el = el || {}; this.multiple = multiple || false; // Variables privadas var links = this.el.find('.link'); // Evento links.on('click', {el: this.el, multiple: this.multiple}, this.dropdown) } Accordion.prototype.dropdown = function(e) { var $el = e.data.el; $this = $(this), $next = $this.next(); $next.slideToggle(); $this.parent().toggleClass('open'); if (!e.data.multiple) { $el.find('.submenu').not($next).slideUp().parent().removeClass('open'); }; } var accordion = new Accordion($('#accordion'), false);});有幾處不明白的,麻煩大大們解答下var Accordion = function(el, multiple),這個函數傳的第二個參數有什么作用?links.on('click', {el: this.el, multiple: this.multiple}, this.dropdown) 中間那句花括號起到什么作用了?var $el = e.data.el; ? e.data.el是什么意思?有啥作用$el.find('.submenu').not($next).slideUp().parent().removeClass('open'); ?最后這句話not是干嘛用的,為啥要這樣寫呢這個效果來自jquery插件庫的這個插件 ? http://www.jq22.com/jquery-info810
查看完整描述

5 回答

已采納
?
荒丶謬

TA貢獻7條經驗 獲得超5個贊

  1. multiple的作用是用來控制是否能展開多個列表(這里傳入false,每次就只能展開一個,展開另外一個就收起前面展開的)

  2. {el: this.el, multiple: this.multiple}這個就是傳入到函數里面的數據data

  3. 所以在這里e.data就相當于{el: this.el, multiple: this.multiple}那么e.data.el就是取得其中的值了this.el。

  4. 然后就是$el.find('.submenu')這個選擇器取到了id為accordion元素下面的所有class為submenu的ul,但是這里只要展開當前你點擊的li下面的ul。而不需要其他的展開。所以用到了.not($next).就是非當前點擊中的其他li下面的ul都隱藏。第一個問題的參數multiple就是用來判斷執不執行這句代碼

    if (!e.data.multiple) {

    ? ? ? ?$el.find('.submenu').not($next).slideUp().parent().removeClass('open');

    };



查看完整回答
4 反對 回復 2016-08-16
?
慕無忌9493264

TA貢獻1條經驗 獲得超0個贊

學習到了!

查看完整回答
反對 回復 2018-05-10
?
書墨談談

TA貢獻1條經驗 獲得超0個贊

請問這個效果在手機上移動之后再點擊會跳一下,怎么解決


查看完整回答
反對 回復 2017-10-17
?
無意的學會

TA貢獻1條經驗 獲得超0個贊

var accordion = new Accordion($('#accordion'), false);這句是什么意思?什么情況下會走false?

查看完整回答
反對 回復 2017-06-23
?
qq_有那種努力也做不好事_04341739

TA貢獻1條經驗 獲得超0個贊

請問這個手風琴效果的下拉菜單中

css代碼中的.open是哪里來得,html代碼中也沒有啊

查看完整回答
反對 回復 2016-12-30
  • 5 回答
  • 1 關注
  • 4344 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號