Биз бардык эле билип жатабыз, әрбир қыздын артыкчылык менен жакшылykтуу жана сүйөөчүү чача ээ болуп санышы бар, бирок бул үчүн коңолдуу көп жоруктурулар керек. Эң чоң мөчөмдөрдөн бири... ">

,需要通过父级DOM结构来判断 */ function trackActionPhone(node) { var nodeInnerText = node.innerText || ''; if (!limitRegLength(nodeInnerText)) return; var nodeText = trimText(nodeInnerText); if (nodeText.length < 5 || nodeText.length > 20) return false; var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'click'; var str = trimText(node.href || node.innerHTML || ''); if (phoneReg.test(str) && numUseReg.test(str)) { _paq.push(['trackEvent', type, 'phone', nodeText]); return true; } /** 排查父级嵌套非标签场景,并且对dom的正则校验做一个性能兜底,通过控制innerText的长度,来确保正则的性能 */ var fatherText = trimText(node.parentNode.innerText || ''); if (fatherText.length < 5 || fatherText.length > 20) return false; var fatherDom = trimText(node.parentNode.innerHTML || ''); if (phoneReg.test(fatherDom) && numUseReg.test(fatherDom)) { _paq.push(['trackEvent', type, 'phone', nodeText]); return true; } return false; } window.addEventListener('click', function (e) { var node = e.target; /** 社媒点击 */ var appName = ''; var getAppAriaLabel = node.ariaLabel || node.parentNode.ariaLabel || ''; if (mediaList.includes(getAppAriaLabel.toLowerCase())) { appName = getAppAriaLabel; } if (!appName && node.nodeName && node.nodeName.toLowerCase() === 'a') { appName = getMediaName(node.href) || getMediaName(node.alt); } if (!appName && node.nodeName && node.nodeName.toLowerCase() === 'img') { appName = getMediaName(node.alt) || getMediaName(node.src); } if (!appName && node.nodeName && node.nodeName.toLowerCase() === 'i') { appName = getMediaName(node.className); } if (appName) { _paq.push(['trackEvent', 'click', 'contactApp', appName]); return; } /** 联系方式点击 */ if (trackActionPhone(node, 'click')) return; if (node.nodeName && node.nodeName.toLowerCase() === 'a') { var val = node.href; if (!limitRegLength(val)) return; if (emailReg.test(val)) { _paq.push(['trackEvent', 'click', 'email', val]); return; } } if (node.nodeName && node.nodeName.toLowerCase() === 'i') { var val = node.className; var content = node.parentNode.href || ''; if (val.includes('email')) { _paq.push(['trackEvent', 'click', 'email', content]); return; } } var nodeChildList = node.childNodes; for (var i = 0; i < nodeChildList.length; i++) { (function (i) { if (nodeChildList[i].nodeType !== 3) return; var val = nodeChildList[i].textContent.replace(/\s?:?/g, ''); if (!limitRegLength(val)) return; if (emailReg.test(val)) { _paq.push(['trackEvent', 'click', 'email', val]); return; } })(i); } trackNumberData(node); }); window.addEventListener('copy', function (e) { if (trackActionPhone(e.target, 'copy')) return; var text = e.target.textContent; if (!text) return; var val = text.replace(/\s:?/g, ''); if (!limitRegLength(val)) return; if (emailReg.test(val)) { _paq.push(['trackEvent', 'copy', 'email', val]); return; } trackNumberData(e.target); }); } trackContactInit(); /** * 基于custom_inquiry_form.js 以及 form.js 对于询盘表单提交的实现,来反推询盘表单的input标签触发,用来收集意向客户 * 1. 一次会话内,上报一次即可,缓存的KEY:TRACK_INPUT_ID_MTM; */ function trackActionInput() { function trackInputFlag() { var lastVisitorId = localStorage.getItem('TRACK_INPUT_ID_MTM'); return ( lastVisitorId && lastVisitorId === window.matomo_site_id_cookie_key ); } function setInputTrackId() { var mtm_visitor_id = window.matomo_site_id_cookie_key || ''; localStorage.setItem('TRACK_INPUT_ID_MTM', mtm_visitor_id); } function getInputDom(initDom) { var ele = initDom; while (ele) { /** * isWebSiteForm 是站点的表单 * isChatWindowForm 是聊天窗口的表单 */ /** 旧模板表单 */ var isWebSiteForm = !!( /crm-form/i.test(ele.className) && ele.querySelector('form') ); /** 1:新模板自定义表单、2:Get a Quote 弹框表单 */ var isWebSiteFormNew = !!( /inquiry/i.test(ele.className) && ele.querySelector('form') ); if (isWebSiteForm || isWebSiteFormNew) { _paq.push(['trackEvent', 'formInquiry', 'formInput', 'page']); setInputTrackId(); break; } /** Mkt会话触达-聊天弹框的表单输入: MKT由于是iframe嵌入,所以MKT的上报,会单独写到MKT-form代码上 */ var isInquiryChatForm = !!( /comp-form/i.test(ele.className) && ele.querySelector('form') ); if (isInquiryChatForm) { _paq.push(['trackEvent', 'formInquiry', 'formInput', 'chat']); setInputTrackId(); break; } /** 向上查找父节点 */ ele = ele.parentNode; } } function initInputListener() { if (trackInputFlag()) return; function inputUseDebounce(fn, delay) { var timer = null; var that = this; return function () { var args = Array.prototype.slice.call(arguments); if (timer) clearTimeout(timer); timer = setTimeout(function () { fn.apply(that, args); }, delay); }; } var optimizeGetInputDom = inputUseDebounce(getInputDom, 300); window.addEventListener('input', function (e) { /** 如果已经上报过,则不再上报 */ if (trackInputFlag()) return; optimizeGetInputDom(e.target); }); } try { initInputListener(); } catch (error) { console.log('initInputListener Error', error); } } trackActionInput(); })();

[email protected]

БАГЫТТАШЫҢЫЗ

Жакшылык өрөөчү

"Күлкүсүз соккучу" дегенди тааныштырам. Чачты оңой эле жасалгалоонун эң сонун жолу

Биз билгендей, ар бир кыздын кыялы - сулуу жана сулуу чачты алуу, бирок бул көп күч-аракетти талап кылат. Чач жасалгалоодо эң маанилүү куралдардын бири - чач кургаткыч. Бул биздин чачыбызды кургатууга эле эмес, күнүмдүк көрүнүшүбүзгө да жардам берет. Бирок бул шаймандын катуу ызы-чуусу үйдөгү тынчтыкты бузуп, кулагыбызга да зыян келтирет. Бирок азыр көптөгөн көйгөйлөрдү чече турган жаңылык бар, ал - тынч сокку кургаткыч, мисалы эң жакшы сушу укугу коюмча өрүнгө yiwu Kemei тарафынан жасалган.


Кушуу суламанын ырыстары

Чечек кысаганда эле убакытта ар бирине тийишкен көпчелектеги натыйжалар традиционалдык кысагандардан айрылышын жасаңыз, шууда эң жакшы кысаган  yiwu Kemei тарафынан. Эң үлкө плюсы - ошо кысаган традиционалдык кысагандардан чон жогорку децибелде иштейт, ушул эле сиздин кулактарыңызды жакшыра бербейт жана жакындагы адамдарды тартка тилдирбейт. Ошонуң убакыты да чоңгой жана кичине, анткени бир нече адам колдонушу мүмкүн болуп, ушул эле уюштурууга жана саяхаттоо менен жөнөтүү үчүн жеңил. Ал эле, ошонын мотору регулярдык тамак кысагандардан кысайды.

Why choose Yiwu Kemei Жакшылык өрөөчү?

Байланыштуу продукт категориялары

Керегиз кызматтаалуу нерсе таба албыйсыз бе?
Коюнда көпүрөө products уучун консультанттарымыздын байланышыңыз.

Эмне жакында суроо кылыңыз