回答編集履歴
4
修正
answer
CHANGED
@@ -94,7 +94,7 @@
|
|
94
94
|
```
|
95
95
|
|
96
96
|
**複数ポップアップ対応版**
|
97
|
-
|
97
|
+
このようにすることで複数にも対応できると思います。
|
98
98
|
```HTML
|
99
99
|
<!DOCTYPE HTML>
|
100
100
|
<html lang='ja'>
|
@@ -102,7 +102,7 @@
|
|
102
102
|
<!-- 参考 http://qiita.com/ShibuyaKosuke/items/8c47ae51195ddc42ce67 -->
|
103
103
|
<head>
|
104
104
|
<meta charset='UTF-8'>
|
105
|
-
<title></title>
|
105
|
+
<title>タイトル</title>
|
106
106
|
<style type='text/css'>
|
107
107
|
.popUp {
|
108
108
|
border: 2px solid #000000;
|
@@ -126,6 +126,7 @@
|
|
126
126
|
<script>
|
127
127
|
$(document).ready(function () {
|
128
128
|
let $popUp = $(".popUp");
|
129
|
+
let $this = $popUp.prev("a");
|
129
130
|
|
130
131
|
$popUp.css({
|
131
132
|
opacity: "0.8",
|
@@ -133,14 +134,14 @@
|
|
133
134
|
display: "none"
|
134
135
|
});
|
135
136
|
|
136
|
-
$
|
137
|
+
$this.mouseover(function () {
|
137
138
|
$(this).next(".popUp").fadeIn();
|
138
139
|
}).mouseout(function () {
|
139
140
|
$(this).next(".popUp").fadeOut();
|
140
141
|
}).mousemove(function (e) {
|
141
142
|
$(this).next(".popUp").css({
|
142
|
-
|
143
|
+
"top": e.pageY + 10 + "px",
|
143
|
-
|
144
|
+
"left": e.pageX + 10 + "px"
|
144
145
|
});
|
145
146
|
});
|
146
147
|
});
|
3
修正
answer
CHANGED
@@ -125,8 +125,7 @@
|
|
125
125
|
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
|
126
126
|
<script>
|
127
127
|
$(document).ready(function () {
|
128
|
-
|
128
|
+
let $popUp = $(".popUp");
|
129
|
-
const $this = $popUp.prev("a").next();
|
130
129
|
|
131
130
|
$popUp.css({
|
132
131
|
opacity: "0.8",
|
@@ -139,12 +138,12 @@
|
|
139
138
|
}).mouseout(function () {
|
140
139
|
$(this).next(".popUp").fadeOut();
|
141
140
|
}).mousemove(function (e) {
|
142
|
-
$this.css({
|
141
|
+
$(this).next(".popUp").css({
|
143
142
|
'top': e.pageY + 10 + 'px',
|
144
143
|
'left': e.pageX + 10 + 'px'
|
145
144
|
});
|
146
145
|
});
|
147
|
-
})
|
146
|
+
});
|
148
147
|
</script>
|
149
148
|
</body>
|
150
149
|
</html>
|
2
追記
answer
CHANGED
@@ -91,4 +91,61 @@
|
|
91
91
|
</script>
|
92
92
|
</body>
|
93
93
|
</html>
|
94
|
+
```
|
95
|
+
|
96
|
+
**複数ポップアップ対応版**
|
97
|
+
とりあえずこれで複数にも対応できると思います。
|
98
|
+
```HTML
|
99
|
+
<!DOCTYPE HTML>
|
100
|
+
<html lang='ja'>
|
101
|
+
<!-- https://teratail.com/questions/61908 -->
|
102
|
+
<!-- 参考 http://qiita.com/ShibuyaKosuke/items/8c47ae51195ddc42ce67 -->
|
103
|
+
<head>
|
104
|
+
<meta charset='UTF-8'>
|
105
|
+
<title></title>
|
106
|
+
<style type='text/css'>
|
107
|
+
.popUp {
|
108
|
+
border: 2px solid #000000;
|
109
|
+
padding: 10px;
|
110
|
+
}
|
111
|
+
</style>
|
112
|
+
</head>
|
113
|
+
<body>
|
114
|
+
テキストテキストテキスト
|
115
|
+
<a href="javascript:void(0)">
|
116
|
+
クリックすると吹き出しがでる
|
117
|
+
</a>
|
118
|
+
<span class="popUp">吹き出しテキスト1</span>
|
119
|
+
<hr>
|
120
|
+
テキストテキストテキスト
|
121
|
+
<a href="javascript:void(0)">
|
122
|
+
クリックすると吹き出しがでる
|
123
|
+
</a>
|
124
|
+
<span class="popUp">吹き出しテキスト2</span>
|
125
|
+
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
|
126
|
+
<script>
|
127
|
+
$(document).ready(function () {
|
128
|
+
const $popUp = $(".popUp");
|
129
|
+
const $this = $popUp.prev("a").next();
|
130
|
+
|
131
|
+
$popUp.css({
|
132
|
+
opacity: "0.8",
|
133
|
+
position: "absolute",
|
134
|
+
display: "none"
|
135
|
+
});
|
136
|
+
|
137
|
+
$("a").mouseover(function () {
|
138
|
+
$(this).next(".popUp").fadeIn();
|
139
|
+
}).mouseout(function () {
|
140
|
+
$(this).next(".popUp").fadeOut();
|
141
|
+
}).mousemove(function (e) {
|
142
|
+
$this.css({
|
143
|
+
'top': e.pageY + 10 + 'px',
|
144
|
+
'left': e.pageX + 10 + 'px'
|
145
|
+
});
|
146
|
+
});
|
147
|
+
})
|
148
|
+
</script>
|
149
|
+
</body>
|
150
|
+
</html>
|
94
151
|
```
|
1
修正
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
0. ```var $this = $(this);```とすると、$(this)はjQueryオブジェクトに変換されたwindowオブジェクトを指すので```var $this = $popUp.prev("a");```とする必要があると思います。
|
2
2
|
0. ```var $this = $popUp.next("a");```というようにすれば可能ではないでしょうか?
|
3
|
-
0. 動作する記述の場合の$(this)の使い方はあっていると思います
|
3
|
+
0. 動作する記述の場合の$(this)の使い方はあっていると思います。間違っていれば動かないのではないかと思います。
|
4
4
|
|
5
5
|
上を踏まえて動作しない記述を修正すると、次のように書けると思います。
|
6
6
|
**動作しなくなってしまう記述1**
|