回答編集履歴
1
\[ALL OPEN\], \[ALL CLOSE\] ボタンを追加
test
CHANGED
@@ -2,7 +2,125 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
- [aria-hidden属性値をtoggle - JSFiddle](https://jsfiddle.net/Ltjy1uko/)
|
5
|
+
- [aria-hidden属性値をtoggle - JSFiddle](https://jsfiddle.net/Ltjy1uko/1/)
|
6
|
+
|
7
|
+
|
8
|
+
|
9
|
+
```HTML
|
10
|
+
|
11
|
+
<style>
|
12
|
+
|
13
|
+
.mask {
|
14
|
+
|
15
|
+
color: black;
|
16
|
+
|
17
|
+
background-color: white;
|
18
|
+
|
19
|
+
cursor: pointer;
|
20
|
+
|
21
|
+
}
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
.mask[aria-hidden="true"] {
|
26
|
+
|
27
|
+
color: black;
|
28
|
+
|
29
|
+
background-color: black;
|
30
|
+
|
31
|
+
}
|
32
|
+
|
33
|
+
</style>
|
34
|
+
|
35
|
+
</head>
|
36
|
+
|
37
|
+
<body>
|
38
|
+
|
39
|
+
<p id="mask-switch">
|
40
|
+
|
41
|
+
<input type="button" id="all-open" value="ALL OPEN">
|
42
|
+
|
43
|
+
<input type="button" id="all-close" value="ALL CLOSE">
|
44
|
+
|
45
|
+
</p>
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
<h3>神経系とは</h3>
|
50
|
+
|
51
|
+
<p>神経系とは、中枢では<span class="mask" aria-hidden="true">脳と脊髄</span>、末梢では<span class="mask" aria-hidden="true">運動</span>神経・<span class="mask" aria-hidden="true">感覚</span>神経・<span class="mask" aria-hidden="true">自律</span>神経という神経組織からなる。</p>
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
<script>
|
56
|
+
|
57
|
+
'use strict';
|
58
|
+
|
59
|
+
document.querySelectorAll('.mask').forEach(function (element) {
|
60
|
+
|
61
|
+
element.addEventListener('click', function (event) {
|
62
|
+
|
63
|
+
var element = event.target;
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
element.setAttribute('aria-hidden', element.getAttribute('aria-hidden') === 'true' ? 'false' : 'true');
|
68
|
+
|
69
|
+
}, false);
|
70
|
+
|
71
|
+
});
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
document.getElementById('mask-switch').addEventListener('click', function handleClick (event) {
|
76
|
+
|
77
|
+
var input = event.target, ariaHidden;
|
78
|
+
|
79
|
+
|
80
|
+
|
81
|
+
switch (input.id) {
|
82
|
+
|
83
|
+
case 'all-open':
|
84
|
+
|
85
|
+
ariaHidden = 'false';
|
86
|
+
|
87
|
+
break;
|
88
|
+
|
89
|
+
case 'all-close':
|
90
|
+
|
91
|
+
ariaHidden = 'true';
|
92
|
+
|
93
|
+
break;
|
94
|
+
|
95
|
+
}
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
if (ariaHidden) {
|
100
|
+
|
101
|
+
for (var elements = document.querySelectorAll('.mask'), i = 0, len = elements.length; i < len; ++i) {
|
102
|
+
|
103
|
+
console.log(elements[i]);
|
104
|
+
|
105
|
+
elements[i].setAttribute('aria-hidden', ariaHidden);
|
106
|
+
|
107
|
+
}
|
108
|
+
|
109
|
+
}
|
110
|
+
|
111
|
+
}, false);
|
112
|
+
|
113
|
+
</script>
|
114
|
+
|
115
|
+
```
|
116
|
+
|
117
|
+
|
118
|
+
|
119
|
+
**(2017/0/02 10:11追記)**
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
[ALL OPEN], [ALL CLOSE] ボタンを追加しました。
|
6
124
|
|
7
125
|
|
8
126
|
|