ابزاری است که واقعاً کمککننده است. این نوع...">
,需要通过父级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);
}
});
})();
وقتی صحبت از برش ورق فلزی است، گزینههای زیادی در دسترس است. این فشار هیدرولیک بنچ یکی از ابزارهایی است که واقعاً کمککننده است. این نوع قیچی با استفاده از هیدرولیک کار میکند و برش فلز را بهسرعت و بهراحتی انجام میدهد. شرکت ما یکی از بهترین قیچیهای هیدرولیکی ورقبر را تولید میکند. هر اندازه که پروژه شما بزرگ یا کوچک باشد، قیچیهای ما به شما کمک خواهند کرد تا کار را بهدرستی انجام دهید. دستگاه برش ورق هیدرولیکی Nadun Hydraulics برای کسی که به دنبال برشی تمیزتر است، بسیار مناسب است. ما فشردهساز هیدرولیک بارنگار از بهترین مواد ساخته شدهاند، بنابراین آنها به اندازه کافی تیز هستند تا بتوانند از طریق چندین متریال مختلف برش بزنند و به اندازه کافی قوی هستند تا عمر طولانی داشته باشند. این دستگاهها قادر به برش انواع ضخامتهای ورق فلزی هستند، بدین معنی که میتوانید از آنها در تمام انواع پروژهها استفاده کنید. چه کار شما با قطعات ماشینآلات باشد و چه در حال برش طرحهای زیبا روی فلز، میتوانید به برشگرهای ما اطمینان کنید تا نتیجه مطلوب را فراهم کنند. قیچیهای هیدرولیک ما نه تنها دقیقاند، بلکه بسیار قابل اطمینان نیز هستند. آنها به گونهای ساخته شدهاند که میتوانند استفاده سنگین را تحمل کنند، که این ویژگی آنها را برای کارخانهها و فروشگاههایی که دائماً فلز را برش میدهند، ایدهآل میکند. هرگز نباید نگران این باشید که قیچیهای ما در میانه کار گیر کنند، خراب شوند یا دقت خود را از دست دهند. این قیچیها به گونهای طراحی شدهاند که به کار خود ادامه دهند تا اطمینان حاصل شود که شما کارآمد باقی میمانید و تولید شما در سطح بالایی حفظ میشود و حتی زمانی که پروژه شما به پایان رسید، پروژه بعدی بدون هیچ مشکلی اجرا شود. دستگاه پرس هیدرولیکی دستی در وسط کار گیر کنند، خراب شوند یا دقت خود را از دست دهند. آنها طوری طراحی شدهاند که به کار خود ادامه دهند تا اطمینان حاصل شود که شما کارآمد باقی میمانید و تولیدتان بالا نگه داشته شود و حتی زمانی که پروژه شما تمام شد، پروژه بعدی نیز بدون مشکل اجرا شود. اگر میخواهید کار بیشتری را سریعتر و با زحمت کمتر انجام دهید، بهترین گزینه برای شما دستگاه برش فلز ندون است. فشار هیدرولیک بزرگ این دستگاه بسیار سریع است و استفاده از آن بسیار آسان است و این یعنی شما میتوانید در زمان کوتاهتری کار بیشتری انجام دهید، خیلی بیشتر. این موضوع میتواند برای شرکتهایی که نیاز دارند قطعات فلزی زیادی را به سرعت تولید کنند، بسیار مفید باشد. من تقریباً مطمئن هستم که فناوری برش فلز ما برش فلز را واقعاً آسان میکند. حتی برای یک مبتدی، دستگاه ما برش فلز را آسان میکند. فشار حرارتی هیدرولیکی طراحی آساناستفادهای هستند. بنابراین کار شما را بسیار روانتر و کمخطاتر میکنند. و شما قادر خواهید بود برشهایی عالی و مرتب ایجاد کنید، دقیقاً مانند یک متخصص، و این موضوع باعث میشود این محصول برای هر پروژهای که روی آن کار میکنید، بسیار مناسب باشد. محصولات شرکت نادون ماشینری به دلیل کیفیت بالا، عملکرد استثنایی و عمر طولانیترین خدماتدهیشان شناخته میشوند. تیم تحقیق و طراحی این شرکت شامل بیش از ده متخصص در زمینه ماشینآلات هیدرولیک برش ورق فلزی است که هر یک دارای بیش از ۱۰ سال تجربه در حوزه تحقیق و توسعه هستند. تیم ما همواره در حال بهبود و نوآوری است تا با تقاضاهای در حال تغییر بازار همگام باشیم. نادون ماشینری یکی از پیشروترین تولیدکنندگان و صادرکنندگان ماشینآلات پردازش فلزات با بیش از ۱۷ سال تجربه است. این شرکت تمرکز خود را بر روی پرسهای هیدرولیک، پرسهای سوراخکن، ماشینهای برش، ماشینآلات خمکاری و تراشهای عمودی قرار داده است. ما به صنایع مختلفی از جمله هوافضا، تولید خودرو، ساختوساز، مهندسی مکانیک و متالورژی خدمات ارائه میدهیم. محصولات ما شامل ماشینهای هیدرولیک برش ورق فلزی در بیش از ۱۵۰ کشور سراسر جهان عرضه میشوند و استانداردهای جدیدی در زمینه ساخت ماشینآلات تعریف کردهاند. در حوزه محصولات سرمایشی، برندهای دراگون و تایگر و آسمانآرا بهمنظور پاسخگویی به تقاضای گسترده بازار، طیف متنوعی از محصولات را ارائه میکنند که برای سناریوهای مختلف استفاده مصرفکنندگان تنظیم شدهاند. شرکت ما با توسعه خطوط تولید محصولات برندها، محصولات مرتبط با سلامت و تجربه کاربری، توانسته است در حوزه سلامت به یکی از شرکتهای برتر تبدیل شود. شرکت ما هر ساله ۵۰۰ تا ۶۰۰ دستگاه (مجموعه) از انواع محصولات را تولید میکند. همچنین هر ساله خدمات نصب و راهاندازی ماشین برش ورق فلزی هیدرولیک را برای بیش از ۴۰۰ مشتری ارائه میدهیم. محصولات ما دارای گواهیهای استاندارد ISO، CE و SGS و سایر گواهیهای معتبر هستند. تعهد ما به تعالی در تعداد زیادی از اختراعات انحصاری مربوط به محصولات و همچنین گواهیهای افتخاری دریافتشده نمود پیدا کرده است. کپیرایت © شرکت تولید ماشینآلات نادون. همه حقوق محفوظ است
-
سیاست حریم خصوصی
نادون ماشین سازی، شرکت محدود
براش هیدرولیک برای فلز نازک
درباره دوام و قابلیت اطمینان بالا برای تولید بهرهور

افزایش بهرهوری با بهترین دستگاه برش ورق فلزی هیدرولیکی
برش دقیق به راحتی با فناوری چاقوی هیدرولیکی ما

حداکثر بهرهوری و دقت را با فناوری چاقوی ورق فلزی هیدرولیکی خود به دست آورید
Why choose نادون
براش هیدرولیک برای فلز نازک?
کیفیت و عملکرد برجسته:
استاندارد شرکت و دسترسی جهانی:
تنوع محصولات
کیفیت محصول قابل اتکا
چیزی که به دنبالش هستید پیدا نمیشود؟
همین حالا نقلقول درخواست کنید
برای اطلاع از محصولات بیشتر با مشاوران ما تماس بگیرید.با ما در تماس باشید