teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

追記2

2020/05/17 13:48

投稿

Izumo1101
Izumo1101

スコア49

title CHANGED
File without changes
body CHANGED
@@ -240,4 +240,47 @@
240
240
  </script>
241
241
  </body>
242
242
  </html>
243
+ ```
244
+
245
+ --------追記2---------
246
+ off()メソッドというものがあると聞き少しいじってみましたがうまくいきません。
247
+ うーん・・・。思ったより難しい。
248
+ ```javascript
249
+ $(function(){
250
+ $('#panPinchElm').on({
251
+ 'mouseenter': function(Resize) {
252
+ console.log('hoverした');
253
+ var props = $('#panPinchElm').css('transform');
254
+ var values = props.split('(')[1];
255
+ values = values.split(')')[0];
256
+ values = values.split(',');
257
+ var a = values[0];
258
+ var b = values[1];
259
+ var scale = Math.sqrt(a * a + b * b);
260
+ var mousewheelevent = 'onwheel' in document ? 'wheel' : 'onmousewheel' in document ? 'mousewheel' : 'DOMMouseScroll';
261
+ $(document).on(mousewheelevent,function(e){
262
+ var num = parseInt($('.wheel').text());
263
+ e.preventDefault();
264
+ var delta = e.originalEvent.deltaY ? -(e.originalEvent.deltaY) : e.originalEvent.wheelDelta ? e.originalEvent.wheelDelta : -(e.originalEvent.detail);
265
+ if (delta < 0){
266
+ var dNum = num - 1;
267
+ $('.wheel').html(dNum);
268
+ var Nscale = 1 + dNum * 0.2;
269
+ $('#panPinchElm').css('transform', 'scale(' + Nscale +',' + Nscale + ')');
270
+ console.log(Nscale);
271
+ } else {
272
+ var uNum = num + 1;
273
+ $('.wheel').html(uNum);
274
+ var Nscale = 1 + uNum * 0.2;
275
+ $('#panPinchElm').css('transform', 'scale(' + Nscale +',' + Nscale + ')');
276
+ console.log(Nscale);
277
+ }
278
+ });
279
+ },
280
+ 'mouseleave': function() {
281
+ console.log('hover外れた');
282
+ $('#panPinchElm').off('mouseenter mouseleave');
283
+ }
284
+ })
285
+ });
243
286
  ```

1

追記

2020/05/17 13:48

投稿

Izumo1101
Izumo1101

スコア49

title CHANGED
File without changes
body CHANGED
@@ -12,6 +12,10 @@
12
12
  ※要素imgは適当です。
13
13
  ※質問の箇所は「//ここから質問箇所//」で記します。
14
14
 
15
+ -------追記---------
16
+ 数の増減に関しては、hoverが有効になったりならなかったりするたびに起こる現象で、hoverしている時だけ、という処理ができれば解決できそうなので無視していただいて結構です。
17
+ よろしくお願いします。
18
+
15
19
  ```html
16
20
  <!DOCTYPE html>
17
21
  <html>