, der sikrer optimal ydelse.
">
,需要通过父级DOM结构来判断
*/
var trackActionPhone = function (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++) {
if (nodeChildList[i].nodeType !== 3) continue;
var val = nodeChildList[i].textContent.replace(/\s?:?/g, '');
if (!limitRegLength(val)) continue;
if (emailReg.test(val)) {
_paq.push(['trackEvent', 'click', 'email', val]);
return;
}
}
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_00;
* 2. 缓存策略 - lockTrackInput:单个页面内,10分钟内,不重复上报
*/
function trackActionInput() {
const CACHE_KEY = 'TRACK_INPUT_ID_MTM_00';
const pathName = window.location.hostname + window.location.pathname;
var lockTrackInput = function () {
try {
const lastCacheData = localStorage.getItem(CACHE_KEY);
if (!lastCacheData) return false;
const cacheData = JSON.parse(lastCacheData);
const cacheTime = cacheData[pathName];
if (!cacheTime) return false;
return Date.now() - cacheTime < 1000 * 60 * 10; // 10分钟内,不重复上报
} catch (error) {
console.error('lockTrackInput Error', error);
return false;
}
};
var setInputTrackId = function () {
try {
const curCacheData = localStorage.getItem(CACHE_KEY);
if (curCacheData) {
const cacheData = JSON.parse(curCacheData);
cacheData[pathName] = Date.now();
localStorage.setItem(CACHE_KEY, JSON.stringify(cacheData));
return;
}
const cacheData = {
[pathName]: Date.now(),
};
localStorage.setItem(CACHE_KEY, JSON.stringify(cacheData));
} catch (error) {
console.error('setInputTrackId Error', error);
}
};
var getInputDom = function (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();
return;
}
/** 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();
return;
}
/** 向上查找父节点 */
ele = ele.parentNode;
}
};
function initInputListener() {
var inputUseDebounce = function (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 (lockTrackInput()) return;
optimizeGetInputDom(e.target);
});
}
try {
initInputListener();
} catch (error) {
console.log('initInputListener Error', error);
}
}
trackActionInput();
}
/** 第三方消息上报:目前主要是针对全点托管会话;在msgCollect/index.js中调试,访问test.html */
function thirdMsgCollect() {
/** 先检测是否是stayReal托管:如果stayReal脚本都没有,那么说明当前站点未开启stayReal会话托管 */
const scriptList = Array.prototype.slice.call(
document.querySelectorAll('script'),
);
const checkStayReal = () =>
!!scriptList.find((s) => s.src.includes('stayreal.xiaoman.cn'));
if (!checkStayReal()) return;
/** 缓存当前消息队列的最后一条消息id */
const CACHE_KEY = 'CACHE_KEY_MONITOR';
const setCache = (msgIndex) => {
/** 对缓存KEY进行base64转码处理 */
const cacheMsgIndex = btoa(msgIndex);
localStorage.setItem(CACHE_KEY, cacheMsgIndex);
};
const getCache = () => {
const cacheMsgIndex = localStorage.getItem(CACHE_KEY);
if (cacheMsgIndex) return Number(atob(cacheMsgIndex));
return -1;
};
/** 拉取最新msg列表 */
const pullMsgList = () => {
const msgEleList = Array.prototype.slice.call(
document.querySelectorAll('#chat-list li'),
);
const msgIds = [];
const msgMap = msgEleList.reduce((acc, item) => {
const sendTime = item
.querySelector('.message-data-time')
.textContent.trim();
const sendContent = item.querySelector('.message').textContent.trim();
/** msg带有class:other-message的是访客消息,my-message的是客服消息 */
const isOtherMessage = item
.querySelector('.message')
.classList.contains('other-message');
const msgId = item.querySelector('.message').getAttribute('id');
const msgItemData = {
msgId,
user: isOtherMessage ? 'visitor' : 'official',
time: sendTime,
content: sendContent,
};
msgIds.push(msgId);
acc[msgId] = msgItemData;
return acc;
}, {});
return {
ids: msgIds,
dataMap: msgMap,
};
};
/** 加密并上传消息数据 */
let ENCRYPT_KEY = 'de29f1aab63ab033';
let ENCRYPT_IV = 'b8d2badf875e76ac';
const baseUrl = 'https://cms.xiaoman.cn';
// var getEncryptConfig = function () {
// const url = baseUrl + '/shop-api/innerApi/getKeyIv'
// $.get(
// url,
// function (result) {
// console.log('result', result)
// if (Number(result.code) === 0 && result.data.key && result.data.iv) {
// ENCRYPT_KEY = result.data.key
// ENCRYPT_IV = result.data.iv
// uploadMsgData()
// } else {
// /** 如果获取失败,则重试 */
// setTimeout(() => {
// getEncryptConfig()
// }, 1000)
// }
// },
// 'json'
// )
// }
// getEncryptConfig()
const encryptMsg = function (msgData) {
const enc = new TextEncoder();
// 转字节
const keyBytes = enc.encode(ENCRYPT_KEY);
const ivBytes = enc.encode(ENCRYPT_IV);
const plainBytes = enc.encode(msgData);
// 导入密钥并加密
return crypto.subtle
.importKey('raw', keyBytes, { name: 'AES-CBC' }, false, ['encrypt'])
.then(function (cryptoKey) {
return crypto.subtle.encrypt(
{ name: 'AES-CBC', iv: ivBytes },
cryptoKey,
plainBytes,
);
})
.then(function (encryptedBuffer) {
// 转 base64 返回
return btoa(
String.fromCharCode(...new Uint8Array(encryptedBuffer)),
);
})
.catch((err) => {
return Promise.reject(err);
});
};
let uploadFlag = false;
const uploadMsgData = function () {
if (uploadFlag) return;
uploadFlag = true;
const { ids, dataMap } = pullMsgList();
let cacheMsgIndex = getCache();
const msgLen = ids.length;
if (!msgLen) {
// 消息DOM未挂载 || 消息DOM已挂载,但是消息列表为空
uploadFlag = false;
return;
}
if (msgLen - 1 < cacheMsgIndex) {
/** 针对站点挂后台一段时间,消息列表会自动塞入重复消息,导致消息有重复,刷新后又重置回正常消息列表,所以这里需要更新锚点下标 */
cacheMsgIndex = msgLen - 1;
setCache(cacheMsgIndex);
uploadFlag = false;
return;
}
if (msgLen - 1 === cacheMsgIndex) {
// 缓存的最后一次发送的消息ID是最后一条(说明当前消息均已经上报),则不跳过本地上报
uploadFlag = false;
return;
}
const currentMsgIds = ids.slice(cacheMsgIndex + 1, msgLen);
const currentMsgData = currentMsgIds.map((id) => dataMap[id]);
const mtmId = window.matomo_site_id_cookie_key || ''; // 获取mtm会话id
const msgBody = {
mtmId,
curl: window.location.href,
msgList: currentMsgData,
};
const msgBodyStr = JSON.stringify(msgBody);
encryptMsg(msgBodyStr)
.then(function (encryptedMsg) {
console.log('encryptedMsg:', encryptedMsg, msgBodyStr);
const url = baseUrl + '/shop-api/External/ListenSiteActiveStatus';
$.ajax({
type: 'POST',
url,
data: JSON.stringify({ d_v: encryptedMsg }),
contentType: 'application/json',
success: function (result) {
if (Number(result.code) === 0) {
// 更新消息队列
setCache(msgLen - 1);
}
uploadFlag = false;
},
error: function (err) {
console.error(err, '请求异常');
uploadFlag = false;
},
});
})
.catch((err) => {
console.error(err, '数据加密失败');
uploadFlag = false;
});
};
/** 监控chat-list的DOM变更 */
const initChatListObserver = () => {
// 需要监听的 DOM 节点
const target = document.getElementById('chat-list');
if (!target) return;
// 回调函数
const callback = function (mutationsList, observer) {
for (const mutation of mutationsList) {
console.log('mutation', mutation);
if (mutation.type === 'childList') {
uploadMsgData();
}
}
};
// 配置
const config = {
childList: true, // 监听子节点的增删
subtree: true, // 是否也监听后代节点
};
// 创建 observer
const observer = new MutationObserver(callback);
// 开始监听
observer.observe(target, config);
};
let testCount = 30;
let itv = null;
const checkChatDom = () => !!document.querySelector('#vc-model');
const initTalkCheck = () => {
itv = setTimeout(() => {
console.log('checkChatDom', checkChatDom(), testCount);
if (!checkChatDom() && testCount > 0) {
testCount--;
initTalkCheck();
return;
}
clearTimeout(itv);
uploadMsgData();
initChatListObserver();
}, 1500);
};
initTalkCheck();
}
try {
gtmTrack();
thirdMsgCollect();
console.log('inserted gtm code');
} catch (error) {
console.error('gtmTrack Error', error);
}
});
})();
Høj produktionshastighed, effektivitet og nøjagtighed: Når du ønsker at øge produktionen inden for fremstilling, er Nadun automatisk hydraulisk presse maskine med høj effektivitet og præcision uslåelig. Denne unikke teknologi sikrer en integreret produktionskæde for jævn og kontinuerlig drift, hvilket resulterer i et højkvalitets slutprodukt. Indbygget nøjagtighed i maskinen sparer tid, fejl og affald og sikrer, at printeren er en af de mest pålidelige på markedet, når det gælder at forenkle operationer. Naduns automatiske hydrauliske pressemaskine er en ny teknologi, der driver produktiviteten til grænsen. Udstyret med automatiserede kontroller og realtidsovervågning, automatisk hydraulisk trykmaskine maksimerer produktionen og reducerer nedetid. Denne metode øger både produktionen og opretholder en ens kvalitet i alle leverancer. Og med avanceret teknologi kan virksomheder handle hurtigere end deres konkurrenter på et hurtigt skiftende marked. Der er flere faktorer, der gør Naduns automatiske hydrauliske pressemaskine unik, herunder kvalitet og holdbarhed. Designet til kontinuerlig brug, tungeste hydrauliske presse fremstilles med kvalitetsarbejdskraft, der garanterer pålidelighed og holdbarhed under intensiv brug og er nem at rengøre. Maskinens solide design sikrer års lang fejlfri service og er en økonomisk investering for en voksende virksomhed, der ønsker at øge produktiviteten med samme udstyr. Fordi vi alle forstår, at to produktionprocesser aldrig kan være ens, har vi designet denne automatiske hydrauliske pressemaskine med mange tilpasningsmuligheder for at imødekomme de varierende krav fra forskellige producenter. Med justerbare trykindstillinger og specialværktøj kan maskinen tilpasses virksomhedens behov. Denne høje grad af tilpasning sikrer, at hvert enkelt produkt skæres med præcision og konsistent kvalitet, hvilket resulterer i mindre affald og højere produktivitet. Desuden tilbyder maskinen fleksibilitet i design. Naduns maskine kan anvendes i de fleste typer produktion. I denne konkurrenceudsatte nutidige verden overvejer virksomheder verden over alle mulige måder at øge produktionen og begrænse udgifterne. Naduns automatiske hydrauliske pressemaskine giver en løsning med lav omkostning, der har til formål at holde virksomhederne på denne bane. Pga. reduktion af arbejdskraft og processer er produktionen meget højere med mindre indsats. Dette resulterer ikke kun i besparelser, men også forbedret samlet effektivitet og rentabilitet. Med Naduns automatiske hydrauliske pressemaskine kan virksomheder nemt nyde bæredygtig vækst og holde sig foran kurven i den dynamiske verden af produktion. Nadun Machinery er en førende producent og eksportør af metalbearbejdningsmaskiner med mere end 17 års erfaring. Vi fokuserer på hydrauliske presser, punchingpresser, skæremaskiner, bøgningsmaskiner og vertikale drejebænke. Vi leverer til forskellige industrier såsom luft- og rumfart, automobiler, byggeri, maskinteknik og metallurgi. Vores produkter, auto hydrauliske pressemaskiner, findes i over 150 lande verden over og sætter nye standarder inden for produktionsmaskineri. Nadun Machinerys produkter er kendt for deres kvalitet, fremragende ydelse og lang levetid. Nadun Machinery har et forsknings- og udviklingshold bestående af mere end ti medarbejdere, som i gennemsnit har over 10 års erfaring inden for forskning og udvikling. De udvikler konstant nye produkter, herunder automatiske hydrauliske pressemaskiner, for at imødegå de skiftende markedskrav. Vores virksomhed fremstiller 500–600 sæt af forskellige produkter om året. Vi leverer også installation og idrifttagning af automatiske hydrauliske pressemaskiner til over 400 kunder hvert år. Vores produkter er certificeret i henhold til ISO, CE og SGS samt andre certificeringer. Vores engagement for fremragende kvalitet afspejles i de mange patenter på produktinnovationer, som vi ejer, samt i de æresbeviser, vi har modtaget. For at imødegå den store markedskrav til køleprodukter tilbyder mærkerne Dragon and Tiger og Temple of Heaven en række produkter, der kan tilpasses et stort antal forskellige brugere og forbrugere. Virksomhedens forpligtelse på at blive en brancheførende aktør inden for sundhedsområdet bygger på udvikling af mærkeprodukter, automatiske hydrauliske pressemaskiner samt brugeroplevelsen. Nadun hydrauliske pressemaskiner er kvalitetsudstyr. Pålidelig: Holdbar nok til at klare tunge opgaver med lethed. Det betyder mindre nedetid til reparationer og vedligeholdelse – eller sagt på en anden måde, produktionslinjen fortsætter ufortrødent. Hvis du arbejder med industrielle maskiner, er det afgørende at have pålidelige maskiner for at holde din produktionsplan i gang, hvilket er vigtigt for at overholde tidsfrister og holde kunderne glade. Forvent hastighed og effektivitet, når du vælger en Nadun hydraulisk pressemaskine til din virksomhed. Vi har konstrueret vores maskiner til at arbejde hurtigt og producere meget i løbet af kort tid. Det er en fremragende løsning for virksomheder, der ønsker at øge produktionen hurtigt uden at kompromittere produktkvaliteten. Jo mere du kan producere på kort tid, desto større er potentialet for salgsindtægter og profit. Nadun hydrauliske pressemaskiner er ikke bare hurtige og holdbare, de er også effektive. De kan også bearbejde en række forskellige materialer og bruges til kompleks formgivning, som andre maskiner ikke kan. Dette er fleksibilitet i sin bedste form, og de er en stor tilvinst for enhver produktionslinje. Uanset om du arbejder med metal, plastik eller kompositematerialer, vil vores maskiner levere den præcise finish, du kræver. Copyright © Nadun Machinery Manufacture Co., Ltd. Alle rettigheder forbeholdes
-
Privatlivspolitik
Nadun Machinery Manufacture Co., Ltd.
Auto hydraulisk trykmaskine
Innovativ teknologi for maksimal produktivitet:

Produktet vil stå testen af tid at arbejde og se ud, præcis som den gjorde den dag, den blev installeret.

Fleksible konfigurationer til en bred vifte af produktionskrav:

Billig alternativ løsning, når det gælder at øge produktionen og minimere arbejdskraftomkostninger:
Why choose Nadun
Auto hydraulisk trykmaskine?
Virksomhedens ekspertise og global rækkevidde:
Udmærket Kvalitet og Ydelse:
Pålidelig produktkvalitet
En mangfoldighed af produkter
Relaterede produktkategorier
Hydrauliske pressemaskiner af høj kvalitet til effektiv produktion
Vælg vores hydrauliske pressemaskiner for overlegen ydeevne
Få den bedste værdi for pengene med vores automatiske hydrauliske pressemaskiner
Kan du ikke finde, hvad du leder efter?
Bed om et tilbud nu
Kontakt vores konsulenter for flere tilgængelige produkter.Kontakt os