| ... |
... |
@@ -4,23 +4,29 @@ |
| 4 |
4 |
content = header.next('.showhidecontent'), |
| 5 |
5 |
effect = header.attr('data-show-effect'), |
| 6 |
6 |
duration = parseInt(header.attr('data-show-duration')) || 300, |
|
7 |
+ arrowEl = header.find('.showhide-arrow'), |
| 7 |
7 |
iconEl = header.find('.showhide-icon'); |
| 8 |
8 |
|
| 9 |
|
- // Sicherheitsprüfung für Effekt |
| 10 |
10 |
if ($.inArray(effect, ['toggle', 'fadeToggle', 'slideToggle']) === -1) { |
| 11 |
11 |
effect = 'toggle'; |
| 12 |
12 |
} |
| 13 |
13 |
|
| 14 |
|
- // Sichtbarkeitsstatus |
| 15 |
15 |
var isVisible = content.is(':visible'); |
| 16 |
16 |
var newState = !isVisible; |
| 17 |
17 |
|
| 18 |
|
- // Nachricht + Pfeil setzen |
| 19 |
|
- var message = newState ? header.attr('data-hide-message') : header.attr('data-show-message'); |
| 20 |
|
- var icon = newState ? '▼ ' : '► '; |
| 21 |
|
- iconEl.html(icon + message); |
|
17 |
+ // Pfeil aktualisieren |
|
18 |
+ if (arrowEl.length) { |
|
19 |
+ arrowEl.text(newState ? '▼' : '►'); |
|
20 |
+ } |
| 22 |
22 |
|
| 23 |
|
- // Inhalt ein-/ausblenden |
|
22 |
+ // Nachricht rechts aktualisieren (optional) |
|
23 |
+ if (iconEl.length) { |
|
24 |
+ var message = newState |
|
25 |
+ ? header.attr('data-hide-message') |
|
26 |
+ : header.attr('data-show-message'); |
|
27 |
+ iconEl.text(message); |
|
28 |
+ } |
|
29 |
+ |
| 24 |
24 |
content.stop()[effect](duration); |
| 25 |
25 |
} |
| 26 |
26 |
|