PageSourceSearch

https://www.jasso.go.jp/widget/js/attend.js

js jasso.go.jp collected 2026-09-24 08:46:06 UTC 3,142 bytes, 95 lines download raw bytes

1;(function($) {
2	$(function(){
3		var body = $('body'),
4				chatbot = '#chatbot',
5				cbClose = '#chatbot-close',
6				cbButtonContainer = '.js-chatbot',
7				cbOpen = '.js-chatbot-open',
8				cbMinimize = '.js-chatbot-minimized',
9				cbTab = '.js-chatbot-tab',
10				minimizeClass = 'is-minimized',
11				minimizeButtonClass = 'is-button-minimized',
12				closeClass = 'is-closed',
13				openClass = 'is-opened',
14				openTabClass = 'is-tab-opened';
15
16		let ua = navigator.userAgent;
17		if (ua.indexOf('iPhone') > 0 || ua.indexOf('Android') > 0 && ua.indexOf('Mobile') > 0 || !AttendWidgetConfig.view.widget.popup) {
18			body.on('click', cbOpen, function(e) {
19				var href = $(chatbot).data('href');
20				window.open(href, '_blank');
21			});
22			body.on('click', cbClose, function(e) {
23				e.stopPropagation();
24				$(chatbot).removeClass(openClass);
25				$(chatbot).removeClass(closeClass);
26				$(cbButtonContainer).attr('aria-expanded','false');
27			});
28			body.on('click', cbMinimize, function(e) {
29				e.stopPropagation();
30				$(this).blur();
31				$(cbButtonContainer).addClass(minimizeButtonClass);
32				$(cbButtonContainer).attr('aria-expanded','false');
33			});
34		} else {
35			const iactParamRegex = /^cogmo-|_/
36			body.on('click', cbOpen, function(e) {
37				let iframe = "<iframe src='" + widgetPath + "ui/index.html' frameborder='0' scrolling='auto'></iframe>";
38				if(window.iframePath){
39					iframe = "<iframe src='" + iframePath + "' frameborder='0' scrolling='auto'></iframe>";
40				}
41				if (!$(this).hasClass('first-click')) {
42					$("#chatbot-body").append(iframe);
43					$(this).addClass('first-click');
44					$(chatbot).removeClass(minimizeClass);
45					$(cbButtonContainer).attr('aria-expanded','true');
46				}
47
48				$(cbButtonContainer).addClass(openClass);
49				$(cbButtonContainer).attr('aria-expanded','true');
50				$(chatbot).addClass(openClass);
51				$(chatbot).removeClass(closeClass);
52			});
53			body.on('click', cbClose, function(e) {
54				e.stopPropagation();
55				$(cbButtonContainer).removeClass(openClass);
56
57				if ($(cbOpen).hasClass('js-btn-chatbot')) {
58					$(cbButtonContainer).attr('aria-expanded','true');
59				} else {
60					$(cbButtonContainer).attr('aria-expanded','false');
61				}
62
63				$(chatbot).removeClass(openClass);
64				$(chatbot).addClass(closeClass);
65				$(cbOpen).focus();
66			});
67			body.on('click', cbMinimize, function(e) {
68				e.stopPropagation();
69				$(this).blur();
70				$(cbButtonContainer).addClass(minimizeButtonClass);
71				$(cbButtonContainer).attr('aria-expanded','false');
72			});
73		}
74
75		body.on('click keydown', cbTab, function(e) {
76			var tabIndex ='.js-btn-chatbot';
77
78			if (e.type === 'keydown' && e.key !== 'Enter') {
79				return;
80			}
81
82			$(this).toggleClass(openTabClass);
83			$(cbButtonContainer).toggleClass(openTabClass);
84			$(this).blur();
85
86			if ($(cbButtonContainer).hasClass(openTabClass)) {
87				$(cbButtonContainer).attr('aria-expanded','true');
88				$(tabIndex).attr('tabindex','0');
89			} else {
90				$(cbButtonContainer).attr('aria-expanded','false');
91				$(tabIndex).attr('tabindex','-1');
92			}
93		});
94	})
95})(jQuery);

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.