PageSourceSearch

https://soracom.jp/wp-content/themes/soracom/js/cmn.js?ver=2026-08-12-020835

js soracom.jp collected 2026-09-24 08:59:28 UTC 6,300 bytes, 186 lines download raw bytes

1(function() {
2  (function() {
3    $(function() {
4
5      /*171012 */
6      var animationDuration, horizontalNavigation, menuOpening, navServices, scrollpos, state;
7      $('.usecae-contents').on('click', function() {
8        var url;
9        url = void 0;
10        url = $('.usecase-item', this).attr('href');
11        location.href = url;
12      });
13      state = false;
14      scrollpos = void 0;
15
16      // gnaviを閉じる共通処理
17      function closeGnavi() {
18        $('body').removeClass('body-fix');
19        $('.gnavi').removeClass('gnavi-active');
20        $('.gnavi-title').removeClass('gnavi-title-active');
21        $('.gnavi-sub').removeClass('gnavi-sub-active');
22      }
23
24      $('.gnavi-title').click(function(e) {
25        var $title = $(this);
26        var id = $title.data('tabId');
27
28        // ドキュメント側のクリック判定に巻き込まれないようにする
29        e.stopPropagation();
30
31        // Hide/Show corresponding tab
32        if ($title.hasClass('gnavi-title-active')) {
33          closeGnavi();
34        } else {
35          $('body').addClass('body-fix');
36          $('.gnavi').addClass('gnavi-active');
37          // Hide other tabs
38          $('.gnavi-title').removeClass('gnavi-title-active');
39          $('.gnavi-sub').removeClass('gnavi-sub-active');
40          // Show its tab
41          if (id) {
42            $title.addClass('gnavi-title-active');
43            $('.gnavi-sub[data-tab-id=' + id + ']').addClass('gnavi-sub-active');
44          }
45        }
46      });
47
48      // モバイル表示: .gnavi-sub-title (戻るボタン) をクリックしたらサブメニューを閉じて一覧に戻る
49      $('.gnavi-sub-title').on('click', function(e) {
50        if ($(window).width() <= 1116) {
51          e.stopPropagation();
52          $('.gnavi-title').removeClass('gnavi-title-active');
53          $('.gnavi-sub').removeClass('gnavi-sub-active');
54        }
55      });
56
57      // .gnavi-sub-active の .gnavi-sub-inner 以外をクリックしたら閉じる
58      $(document).on('click', function(e) {
59        if ($('.gnavi-sub-active').length && !$(e.target).closest('.gnavi-sub-active .gnavi-sub-inner').length) {
60          closeGnavi();
61        }
62      });
63
64      // Header menu for responsive
65      function closeHeaderMenu() {
66        $('body').removeClass('body-fix').css({
67          'top': 0
68        });
69        window.scrollTo(0, scrollpos);
70        state = false;
71        $('.header-menu').removeClass('header-menu-active');
72        $('.gnavi').removeClass('gnavi-active');
73        $('.gnavi-title').removeClass('gnavi-title-active');
74        $('.gnavi-sub').removeClass('gnavi-sub-active');
75      }
76
77      $('.header-menu').on('click', function(e) {
78        e.stopPropagation();
79        if (state === false) {
80          scrollpos = $(window).scrollTop();
81          $('body').addClass('body-fix').css({
82            'top': -scrollpos
83          });
84          $('body').toggleClass('body-fix');
85          state = true;
86          $(this).toggleClass('header-menu-active');
87          $('.gnavi').toggleClass('gnavi-active');
88          $('.gnavi-title').removeClass('gnavi-title-active');
89          $('.gnavi-sub').removeClass('gnavi-sub-active');
90        } else {
91          closeHeaderMenu();
92        }
93      });
94
95      // メニュー表示中に .header-menu / .gnavi-main 以外をクリックしたら閉じる
96      $(document).on('click', function(e) {
97        if (state === true && !$(e.target).closest('.header-menu, .gnavi-main').length) {
98          closeHeaderMenu();
99        }
100      });
101      animationDuration = void 0;
102      horizontalNavigation = void 0;
103      menuOpening = void 0;
104      navServices = void 0;
105      $('#pagetop').hover((function() {
106        return $(this).stop().animate({
107          'opacity': '1'
108        }, 500);
109      }), function() {
110        return $(this).stop().animate({
111          'opacity': '0.5'
112        }, 500);
113      });
114      $('#pagetop').click(function() {
115        $(this).blur();
116        $('html,body').animate({
117          scrollTop: 0
118        }, 'slow');
119        return false;
120      });
121      $('a[href^=\'#\']').click(function() {
122        var href, position, speed, target, headerHeight, serviceNaviHeight;
123        href = void 0;
124        position = void 0;
125        speed = void 0;
126        target = void 0;
127        speed = 500;
128        serviceNaviHeight = document.querySelector('.service-nav') ? document.querySelector('.service-nav').clientHeight : 0;
129        headerHeight = document.querySelector('header.header').clientHeight + serviceNaviHeight + 10;
130        href = $(this).attr('href');
131        target = $(href === '#' || href === '' ? 'html' : href);
132        position = target.offset().top - headerHeight;
133        $('html, body').animate({
134          scrollTop: position
135        }, speed, 'swing');
136        return false;
137      });
138      menuOpening = false;
139      animationDuration = 500;
140      $('#header_menu').click(function() {
141        if (!menuOpening) {
142          menuOpening = true;
143          $('nav').animate({
144            'right': '0px'
145          }, animationDuration, function() {
146            return $('nav').addClass('menu_opening');
147          });
148          return $(this).animate({
149            'right': '272px'
150          }, animationDuration, function() {
151            return $('img', this).addClass('menu_opening');
152          });
153        } else {
154          $('nav').removeClass('menu_opening');
155          $('nav').animate({
156            'right': '-272px'
157          }, animationDuration);
158          $(this).animate({
159            'right': '0'
160          }, animationDuration, function() {
161            return $('img', this).removeClass('menu_opening');
162          });
163          return menuOpening = false;
164        }
165      });
166      horizontalNavigation = true;
167      navServices = function() {
168        return horizontalNavigation = $(window).width() >= 1116;
169      };
170      navServices();
171      $(window).resize(function() {
172        return navServices();
173      });
174      return $('ul.nav > li').hover((function() {
175        if (horizontalNavigation) {
176          return $('.sub_nav', this).addClass('active');
177        }
178      }), function() {
179        if (horizontalNavigation) {
180          return $('.sub_nav', this).removeClass('active');
181        }
182      });
183    });
184  }).call(this);
185
186}).call(this);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.