-
Notifications
You must be signed in to change notification settings - Fork 0
/
jquery.toggle.js
65 lines (41 loc) · 1.33 KB
/
jquery.toggle.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
/*
Toggle 1.0 - jQuery plugin
written by O! Interactive, Acuna
http://ointeractive.ru
Copyright (c) 2020 O! Interactive, Acuna (http://ointeractive.ru)
Dual licensed under the MIT (MIT-LICENSE.txt)
and GPL (GPL-LICENSE.txt) licenses.
Built for jQuery library
http://jquery.com
1.0 31.07.2020
Первый приватный релиз
*/
var opened = false;
$.fn.toggle = function (options) {
options = $.extend ({
'elem': [],
'class': 'active',
}, options);
var self = $(this);
if (!$.isArray (options.elem))
options.elem = [options.elem];
$.each (options.elem, function (key, value) {
self.find (value).click (function () {
$.each (self.find (value), function (key, obj) {
var id = $(obj).data ('toggle');
if (!id)
$($(obj).attr ('href')).hide ();
else
$('#' + id).hide ();
// Все элементы этого типа скрываем...
});
var elem, id = $(this).data ('toggle');
if (!id)
elem = $($(this).attr ('href'));
else
elem = $('#' + id);
elem.addClass (options.class);
elem.show (); // ...а выбранный показываем
});
});
};