PageSourceSearch

https://www.storexppen.eu/newxp/static2024/js/index/hw_tag.js?ver=20260814

js storexppen.eu collected 2026-09-26 02:36:34 UTC 6,415 bytes, 160 lines download raw bytes

1$(function () {
2    const eventMap = {
3        'header .store_nav_top_box .mobile_navtoggle': { reg: 'header_nav', ctrl: '' },
4        'header .store_nav_top_box .nav_logo': { reg: 'header_nav', ctrl: '' },
5        'header .store_nav_top_box .navbar-menu': { reg: 'header_nav', ctrl: '' },
6        'header .store_nav_top_box .navbar_right .menu-search': { reg: 'header_nav', ctrl: 'search' },
7        'header .store_nav_top_box .navbar_right .nav_carts': { reg: 'header_nav', ctrl: '' },
8        'header .store_nav_top_box .navbar_right .navbar_right_account': { reg: 'header_nav', ctrl: '' },
9
10        'header .navbar_header-warpper .search-warpper': { reg: 'header_nav', ctrl: 'search' },
11        'header .navbar_header-warpper .search_bar_menu': { reg: 'header_nav', ctrl: 'search' },
12        'header .navbar_header-warpper .navbar-menu': { reg: 'header_nav', ctrl: '' },
13        'header .navbar_header-warpper .moblie-menu': { reg: 'header_nav', ctrl: '' },
14
15        // '.xp_foot': { reg: 'footer_nav', ctrl: '' },
16        //
17        // '.fullscreen_picture_1': { reg: 'xp_banner', ctrl: '' },
18        // '.xpshop_banner': { reg: 'xp_banner', ctrl: '' },
19        // '.hot_product_content': { reg: 'hot_product', ctrl: '' },
20        // '.section-module .hot-products': { reg: 'hot_product', ctrl: '' },
21        // '.section-module .sales-products': { reg: 'hot_product', ctrl: '' },
22        // '.page-three-content': { reg: 'hot_product', ctrl: '' },
23        //
24        // '.section-module .category': { reg: 'category', ctrl: '' },
25        // '.pc_category .tuyzuinan_1': { reg: 'category', ctrl: '' },
26        // '.content1_bg1 .commodity1': { reg: 'category', ctrl: '' },
27        //
28        // '.ph_swiper_video': { reg: 'video', ctrl: '' },
29        // '.home_video_box .swiper-wrapper': { reg: 'video', ctrl: '' },
30        //
31        // '.products-recommended-box': { reg: 'multi_img_text', ctrl: '' },
32        // '.section-module .application .application-item': { reg: 'multi_img_text', ctrl: '' },
33        // '.graphic-module-content': { reg: 'multi_img_text', ctrl: '' },
34        //
35        // '.page-two-content': { reg: 'lr_img_text', ctrl: '' },
36        //
37        // '.myWantComment .submit_button': { reg: 'comment', ctrl: '' },
38        // '.goods_ask_content .submit_button': { reg: 'ask', ctrl: '' },
39        // '.relation_product .relation_list': { reg: 'relate_product', ctrl: '' },
40        // '.NewBody .Newconter': { reg: 'news', ctrl: '' },
41        // '.Ch2020_countdown': { reg: 'countdown_ad', ctrl: '' },
42
43
44    };
45
46    const regMap = {
47        'ads_banner': '',
48        'header_nav': 'OBS-MktReg-2-1',
49        'footer_nav': '',
50        'xp_banner': '',
51        'relate_product': '',
52        'hot_product': '',
53        'category': '',
54        'video': '',
55        'three_video': '',
56        'lr_img_text': '',
57        'multi_img_text': '',
58        'news': '',
59        'comment': '',
60        'ask': '',
61        'countdown_ad': ''
62    };
63
64    const ctrlMap = {
65        'sign_in': 'CtrlReg-1_1',
66        'login_with_google': 'CtrlReg-1_2',
67        'login_with_facebook': 'CtrlReg-1_3',
68        'register': 'CtrlReg-2_1',
69        'search': 'CtrlReg-3_1',
70        'subscribe': 'CtrlReg-4_2'
71    };
72    function is_mobile_request() {
73        var is_mobile = false;
74        if (/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))) {
75            if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) {
76                is_mobile = true;
77            } else {
78                is_mobile = false;
79            }
80        }
81        return is_mobile;
82    }
83    const isMobile = is_mobile_request();
84
85    function getMappedValue(key, map) {
86        let value = map[key] ?? '';
87        if (value) {
88            value = (isMobile ? 'M-' : 'PC-') + value;
89        }
90        return value;
91    }
92
93    Object.keys(eventMap).forEach(selector => {
94        const target = eventMap[selector];
95        $(document).on('click', selector, function () {
96            setCookie('sr_reg', getMappedValue(target.reg, regMap));
97            setCookie('sr_ctrl', getMappedValue(target.ctrl, ctrlMap));
98        });
99    });
100
101    $(document).on('click', function (event) {
102        const $target = $(event.target);
103        const matchedSelector = Object.keys(eventMap).find(selector => $target.closest(selector).length > 0);
104        if (!matchedSelector) {
105            setCookie('sr_reg', getMappedValue('', regMap));
106            setCookie('sr_ctrl', getMappedValue('', ctrlMap));
107        }
108    });
109
110    $('header .store_nav_top_box .navbar_right .menu-search').click(function () {
111        let selector = 'header .store_nav_top_box .navbar_right .menu-search';
112        const target = eventMap[selector];
113        if(target){
114            updatePubAttr({
115                'sr_reg': getMappedValue(target.reg, regMap),
116                'sr_ctrl': getMappedValue(target.ctrl, ctrlMap)
117            });
118            hwtag('event', 'SearchStart');
119            KeyWordExpHwTag();
120        }
121    })
122
123
124    // ---- hwTag -----
125    function KeyWordExpHwTag(){
126        try {
127            let eventParam = [];
128            $("ul.search-list-box li").each(function () {
129                let key_word;
130                if ($(this).hasClass('hot-search-tag')) {
131                    key_word = $(this).find('span.search_bar_menu_link').text();
132                } else {
133                    key_word = $(this).text();
134                }
135                eventParam.push({
136                    "key_word": key_word ,
137                    "key_word_type":"recommend_words" ,
138                    "key_word_number": $(this).index()+1 ,
139                });
140            });
141            $("ul.search_history li").each(function () {
142                eventParam.push({
143                    "key_word": $(this).text().trim(),
144                    "key_word_type":"history_words" ,
145                    "key_word_number": $(this).index()+1 ,
146                });
147
148            });
149            console.log(eventParam);
150            hwtag('event', 'KeyWordExp', eventParam);
151        }catch (e){
152            console.log(e.message);
153        }
154    }
155
156
157
158
159
160});

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.