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.