質問編集履歴

4

更新

2016/06/08 21:44

投稿

nyamo
nyamo

スコア21

test CHANGED
File without changes
test CHANGED
@@ -2,6 +2,16 @@
2
2
 
3
3
  on clickであれば問題なく動作しても、hammer.jsを使用した際のtapでは開いた瞬間に閉じてしまい困っています。
4
4
 
5
+
6
+
7
+ ■追記
8
+
9
+ .hammer().on("tap touchstart")とすることで、領域外のタップで閉じるようになりました。ただ、tapも動作してしまうので挙動は怪しいです。
10
+
11
+ ifで"tap"と"touchstart"の振り分けをしようと思いましたが、iosではtapもtouchstartも動いてしまうので、別の事で振り分けないとダメそうです。
12
+
13
+
14
+
5
15
  ```ここに言語を入力
6
16
 
7
17
  $("body").hammer().on("tap", function() {

3

更新

2016/06/08 21:44

投稿

nyamo
nyamo

スコア21

test CHANGED
File without changes
test CHANGED
@@ -42,6 +42,8 @@
42
42
 
43
43
  ■追記
44
44
 
45
+ [https://jsfiddle.net/nyamo/szL8jq7m/1/](https://jsfiddle.net/nyamo/szL8jq7m/1/)
46
+
45
47
  クリックの場合は、ボタン>bodyの順でios以外閉じます。
46
48
 
47
49
  ```javascript
@@ -70,9 +72,7 @@
70
72
 
71
73
  ```
72
74
 
73
- ですが、.hammer().on("tap")では、body>ボタンの順にしなければios以外閉じれないのも気になるところです。
75
+ ですが、.hammer().on("tap")では、body>ボタンの順にしなければios以外閉じれないのも気になるところです。どちらも結局、iosで閉じれないので意味のない事ですが・・・。
74
-
75
- どちらも結局、iosで閉じれないので意味のない事ですが・・・。
76
76
 
77
77
  ```javascript
78
78
 
@@ -101,6 +101,10 @@
101
101
  });
102
102
 
103
103
  ```
104
+
105
+
106
+
107
+
104
108
 
105
109
 
106
110
 

2

修正

2016/06/08 18:56

投稿

nyamo
nyamo

スコア21

test CHANGED
File without changes
test CHANGED
@@ -71,6 +71,8 @@
71
71
  ```
72
72
 
73
73
  ですが、.hammer().on("tap")では、body>ボタンの順にしなければios以外閉じれないのも気になるところです。
74
+
75
+ どちらも結局、iosで閉じれないので意味のない事ですが・・・。
74
76
 
75
77
  ```javascript
76
78
 

1

追記

2016/06/08 18:19

投稿

nyamo
nyamo

スコア21

test CHANGED
File without changes
test CHANGED
@@ -37,6 +37,68 @@
37
37
  もしわかる方がいらっしゃいましたらお教え頂けると幸いです。
38
38
 
39
39
  よろしくお願い致します。
40
+
41
+
42
+
43
+ ■追記
44
+
45
+ クリックの場合は、ボタン>bodyの順でios以外閉じます。
46
+
47
+ ```javascript
48
+
49
+ $(".casebutton").on("click", function(e){
50
+
51
+ $(".casemenu").hide();
52
+
53
+ $(this).parents(".all").children(".casemenu").slideDown("fast");
54
+
55
+ return false;
56
+
57
+ });
58
+
59
+ // クリックでスライドを閉じる
60
+
61
+ $("body").on("click", function(e) {
62
+
63
+ if (!$(e.target).closest('.casemenu').length) {
64
+
65
+ $(".casemenu").slideUp("fast");
66
+
67
+ }
68
+
69
+ });
70
+
71
+ ```
72
+
73
+ ですが、.hammer().on("tap")では、body>ボタンの順にしなければios以外閉じれないのも気になるところです。
74
+
75
+ ```javascript
76
+
77
+ // クリックでスライドを閉じる
78
+
79
+ $("body").hammer().on("tap", function(e) {
80
+
81
+ if (!$(e.target).closest('.casemenu').length) {
82
+
83
+ $(".casemenu").slideUp("fast");
84
+
85
+ }
86
+
87
+ });
88
+
89
+
90
+
91
+ $(".casebutton").hammer().on("tap", function(ev){
92
+
93
+ $(".casemenu").hide();
94
+
95
+ $(this).parents(".all").children(".casemenu").slideDown("fast");
96
+
97
+ return false;
98
+
99
+ });
100
+
101
+ ```
40
102
 
41
103
 
42
104