PageSourceSearch

https://www.jrerl.co.jp/global/assets/js/script.js

js jrerl.co.jp collected 2026-10-02 06:31:37 UTC 4,857 bytes, 161 lines download raw bytes

1"use strict";
2
3
4document.addEventListener('DOMContentLoaded', () =>{
5  var winW = $(window).width();
6  var devW = 799;
7  if (winW <= devW) { //スマホ
8
9		//ハンバーガー
10		$('.l-header__btn').off('click');
11		$('.l-header__btn').on('click', function(){
12			$(this).toggleClass('is-open');
13			$('.sp-nav').slideToggle(400);
14			$("body").toggleClass("fixed");
15			return false;
16		});
17
18  } else { //PC
19
20  }
21});
22
23
24
25$(function () {
26	//MV
27	$(".slider").slick({
28		arrows: false,
29		autoplay: true,
30		adaptiveHeight: true,
31		centerMode: true,
32		centerPadding: "10%",
33		dots: true,
34		appendDots: $('.dots'),
35    responsive: [
36      {
37        breakpoint: 799,
38        settings: {
39          arrows: false,
40					centerMode: false,
41					centerPadding: "0",
42        },
43      },
44    ],
45	});
46
47	//クリックで表示
48	$('.lang').click(function() {
49		$('.lang-box').toggle();
50	})
51
52	//スクロール
53	$('a[href^="#"]').click(function(){
54		var speed = 500;
55		var href= $(this).attr("href");
56		var target = $(href == "#" || href == "" ? 'html' : href);
57		var position = target.offset().top;
58		$("html, body").animate({scrollTop:position}, speed, "swing");
59		return false;
60	});
61
62});
63
64
65
66
67//modal
68const modalBtns = document.querySelectorAll(".modal-toggle");
69modalBtns.forEach(function (btn) {
70  btn.onclick = function () {
71    var modal = btn.getAttribute('data-modal');
72    document.getElementById(modal).style.display = "block";
73  };
74});
75const closeBtns = document.querySelectorAll(".modal-close");
76closeBtns.forEach(function (btn) {
77  btn.onclick = function () {
78    var modal = btn.closest('.modal');
79    modal.style.display = "none";
80  };
81});
82
83window.onclick = function (event) {
84  if (event.target.className === "modal") {
85    event.target.style.display = "none";
86  }
87};
88
89
90
91// clipboard copy
92(function () {
93  let i = 0; 
94  let el = {}; 
95
96  document.addEventListener('DOMContentLoaded', function () {
97    // 各セレクタの指定
98    el.clipboardButton = document.querySelectorAll('.js-clipboard-button');
99    el.clipboardText = document.querySelectorAll('.js-clipboard-text');
100    el.clipboardChangeText = document.querySelectorAll('.js-clipboard-text-change');
101
102    // コピー完了時の各種指定
103    el.textChangeFlag = true; // true or false
104    el.textChangeClass = 'is-text-change';
105    el.completionText = 'copied';
106    el.textReturnToInitialFlag = true; // (戻す:true、戻さない:false)
107    el.textChangeDelay = 1000;
108
109    // クリップボードコピーボタンのイベント処理
110    for (i = 0; i < el.clipboardButton.length; ++i) {
111      el.clipboardButton[i].addEventListener('click', {
112        // 引数と関数をオブジェクトにして渡す
113        targetIndex: i, // 現在の該当要素が何番目かの情報を指定
114        textChangeFlag: el.textChangeFlag, // コピー完了後テキストに書き換えを指定
115        textReturnToInitialFlag: el.textReturnToInitialFlag, // 一定時間後に書き換え前の状態に戻すか指定
116        handleEvent: el.clipBoardCopyFnc // 実行する関数を指定
117      });
118    }
119  }, false);
120
121  // クリップボードコピー用関数
122  el.clipBoardCopyFnc = function () {
123    if (el.activeFlag === true) {
124      return;
125    }
126
127    el.activeFlag = true;
128    el.targetIndex = this.targetIndex;
129    el.clipboardTarget = el.clipboardText[el.targetIndex].textContent; // コピー対象のテキストを取得
130    el.currentChangeText = el.clipboardChangeText[el.targetIndex].textContent; // コピー完了後テキストに書き換え前のテキストを取得
131
132    // クリップボードに該当テキストをコピー
133    if (navigator.clipboard == undefined) {
134      window.clipboardData.setData('Text', el.clipboardTarget); // IE ← これがエラーとなる
135    } else {
136      navigator.clipboard.writeText(el.clipboardTarget); // IE以外
137    }
138
139    // コピー完了後テキストに書き換えフラグが「書き換える:true」か判定
140    if (this.textChangeFlag) {
141      el.clipboardChangeText[el.targetIndex].classList.add(el.textChangeClass);
142      el.clipboardChangeText[el.targetIndex].textContent = el.completionText;
143    }
144
145    // 各種フラグが「書き換える:true」および「戻す:true」か判定
146    if (this.textChangeFlag && this.textReturnToInitialFlag) {
147      setTimeout(function () {
148        el.clipboardChangeText[el.targetIndex].classList.remove(el.textChangeClass);
149        el.clipboardChangeText[el.targetIndex].textContent = el.currentChangeText;
150        el.activeFlag = false;
151      }, el.textChangeDelay);
152    } else {
153      setTimeout(function () {
154        el.activeFlag = false;
155      }, el.textChangeDelay);
156    }
157  }
158}());
159
160
161

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.