PageSourceSearch

https://quick789i.net/g_assets/js/service.js?v=1788499241354&lang=th

js quick789i.net collected 2026-10-10 02:00:42 UTC 2,694 bytes, 83 lines download raw bytes

1// cache: 2026-09-04 12:20:56
2const userAgent = window.navigator.userAgent.toLowerCase();
3function isIpadScreen(){
4    if (window.screen.height / window.screen.width == 1024 / 768){
5        if (window.devicePixelRatio == 1){
6            return true;// iPad, iPad 2, iPad Mini
7        }else{
8            return true;// iPad 3, 4, 5, Mini 2, Mini 3, Mini 4, Air, Air 2, Pro 9.7
9        }
10    }else if (window.screen.height / window.screen.width == 1112 / 834){
11        return true;// iPad Pro 10.5
12    }else if (window.screen.height / window.screen.width == 1366 / 1024){
13        return true;// iPad Pro 12.9, Pro 12.9 (2nd Gen)
14    }else{
15        return false;
16    }
17}
18function isChrome(){
19    return (userAgent).match('crios') || /Google Inc/.test(navigator.vendor) || (!!window.chrome);
20}
21function isSafari(){
22    return /safari/.test(userAgent);
23}
24function isIosDevice(){
25    return /iphone|ipod|ipad/.test(userAgent) || (userAgent).indexOf('mac os x') != -1;
26}
27function isLaunchedInstalledA2H(){
28    return  (navigator.standalone || window.matchMedia('(display-mode: standalone)').matches);
29}
30function isChromeBrowser(){
31    return /Chrome/.test(navigator.userAgent) && /Google Inc/.test(navigator.vendor);
32}
33function touchMoveSetup(position = 'up',el = false,callback = false){
34    if(!el) return false;
35    let _el;
36    _el = document.querySelector(el);
37    if(!_el) return false;
38    let tms; // touch move distance
39    _el.addEventListener("touchstart", (e)=>{
40        tms = e.touches[0].clientY;  
41    }, false);
42    _el.addEventListener("touchend", (e)=>{
43        let tme  = e.changedTouches[0].clientY;
44        if(typeof callback === 'function'){
45            if((tms - tme) > 12){
46                if(position === 'up'){
47                    callback();
48                }
49            }else{
50                if(position === 'down'){
51                    callback();
52                }
53            }
54        }
55    }, false);
56}
57
58//--- shortcode ---//
59
60$(document).ready(function() {
61    $('.snip-image_slider').each(function(i, obj) {
62        let no_paginate = $(obj).data('no_paginate');
63        let param = {
64            calculateHeight: true,
65            autoplay: {
66                delay: $(obj).data('delay') * 1000,
67                disableOnInteraction: false,
68            },
69            spaceBetween: 20,
70            loop: true,
71            pagination: {
72                el: ".swiper-pagination",
73                clickable: true,
74            },
75            navigation: {
76                nextEl: ".swiper-button-next",
77                prevEl: ".swiper-button-prev",
78            },
79        };
80        if(no_paginate) param.pagination = false;
81        new Swiper(obj, param);
82    });
83});

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.