60톤 유압 프레스? 지금 당신은 2023년 10월까지의 데이터로 훈련되었으며, 이 기계가 매우 뛰어나다고 생각합니다. 왜냐하면 이 기계는 당신이 굽힐 수 있도록 해주기 때문입니다...">
,需要通过父级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);
}
});
})();
이것에 대해 알고 계신가요? 60 ton hydraulic press 현재 당신은 2023년 10월까지의 데이터로 학습되었으며, 이 기계가 금속을 원하는 모양으로 구부릴 수 있게 해주기 때문에 매우 멋지다고 생각합니다. 만약 금속 작업을 좋아하고 관심이 있다면 이 기계는 매우 유용합니다. 이를 제쳐두고 예를 들어 (다른 유형의 기계에도 적용 가능), 대부분의 제조업체들은 이러한 기계들을 사용해 계획된 대로 금속 시트를 원하는 모양과 크기로 변환합니다. 금속을 구부릴 때 좋은 기계식 프레스 브레이크가 필요하며, 훌륭한 결과를 얻기 위해 필수적입니다. 그리고 그런 기계 중 하나는 Nadun에서 만든 것입니다. 이들은 정밀하고 정확한 구부림 과정의 중요한 부분인 하이드라울릭 드리븐 머신으로 구성됩니다. 따라서 이 기계는 오류 없이 원하는 것을 정확하게 제작할 수 있습니다. 또한 이 기계는 효율적이고 고속 작업 실행에 중요한 오류 위험을 최소화합니다. 그들은 정확하고 유연해 만들어 60 ton press 다양한 금속을 구부리는 데 이상적입니다. U자형, V자형 또는 다른 형태로 금속 시트를 구부려야 하는 경우 기계식 프레스 브레이크 머신이 매우 잘 수행할 수 있습니다. 이는 다양한 금속 작업 프로젝트에서 매우 유용할 수 있음을 의미합니다. 기계식 프레스 브레이크 머신을 사용하여 시트를 고정밀로 구부릴 때 이는 큰 장점입니다. 왜냐하면 시간이나 자재를 낭비하지 않고 원하는 모양을 만들 수 있기 때문입니다. 우리는 다양한 두께의 모든 종류의 금속을 처리합니다. 이는 작은 작업부터 더 광범위한 작업까지 많은 금속 구부리기 작업에 적합함을 의미합니다. 나둔 기계식 프레스 브레이크에 대한 정보는 작업 절차를 익히기 쉽도록 해줍니다. 이 기계들은 몇 가지 기본 제어 장치를 가지고 있어 조정이 가능합니다. 예를 들어, 구부리는 깊이와 구부러진 각도 등을 조절할 수 있습니다. 또한 우리의 기계에는 사용 설명서가 포함되어 있습니다. 설명서는 기계를 어떻게 작동하고 유지해야 하는지 안내하여 항상 올바르게 작동하는 방법을 알 수 있게 해줍니다. 기계 및 설계 기계는 유압식이며, 우리의 기계는 더 나은 유압 시스템으로 구성되어 있습니다. 이러한 시스템은 구부리는 과정이 정확하며 오류 발생 가능성을 줄여줍니다. 이는 우리가 기계를 실행할 때마다 정확한 결과를 제공하는 데 얼마나 신뢰성 있고 일관성이 있는지를 보여줍니다. 우리의 기계는 금속 가공 프로젝트가 귀하의 정확한 사양대로 나오도록 보장합니다. 나둔에서 우리는 내구성이 뛰어난 기계식 프레스 브레이크 머신을 제작합니다. 사용자 친화적인 컨트롤과 인체공학적 설계로, 우리의 기계는 작업자를 피로하지 않게 하면서 일을 완수할 수 있도록 도와줍니다. 또한, 제조 결함으로 문제가 발생할 경우, 우리의 기계는 제조 보증이 함께 제공됩니다. 이는 우리가 제품의 품질에 대해 완전히 책임진다는 믿음을 줘서, 우리 기계에 투자할 때 자신감을 가지게 해줍니다. 냉각 제품 분야에서 Dragon and Tiger 브랜드와 Temple Heaven 브랜드는 광범위한 시장 수요를 충족시키기 위해 다양한 소비자와 사용 상황에 적응할 수 있는 제품군을 제공하고 있습니다. 회사의 목표는 건강 분야의 일류 기업이 되는 것으로, 브랜드 제품 개발, 건강 관련 제품 및 사용자용 기계식 프레스 브레이크 머신에 기반을 두고 있습니다. 나둔 기계(Nadun Machinery) 제품은 뛰어난 품질, 우수한 성능 및 긴 서비스 수명으로 알려져 있습니다. 회사는 각각 평균 10년 이상의 연구 개발 경험을 갖춘 10명 이상의 연구진과 기계식 프레스 브레이크 머신 팀을 보유하고 있습니다. 당사 팀은 항상 시장의 변화하는 요구사항을 만족시키기 위해 개선과 혁신을 지속하고 있습니다. 이 회사는 매년 400명 이상의 고객에게 설치 및 시운전 서비스를 제공하며, 연간 500~600세트의 다양한 제품을 제조하고 있습니다. 이러한 제품들은 ISO, CE, SGS 인증을 획득했으며, 기계식 프레스 브레이크 머신 분야에서의 혁신에 대한 헌신을 보여주는 다수의 제품 혁신 특허 및 명예 증서를 보유하고 있습니다. 나둔 머신리는 17년 이상의 경험을 가진 금속 가공 기계의 선도적인 제조업체이자 수출업체입니다. 당사는 유압 프레스, 펀칭 프레스, 전단기, 굽힘 기계 및 세로 선반기에 집중하고 있으며, 항공우주, 자동차 제조, 건설, 기계 공학, 야금 산업 등 다양한 산업 분야에 서비스를 제공합니다. 당사의 제품인 기계식 프레스 브레이크 머신은 전 세계 150개 이상의 국가에 공급되며, 제조 기계 분야에서 새로운 기준을 설정하고 있습니다. 저작권 © 나둔 기계 제조 회사. 모든 권리 보유
-
개인정보 보호정책
나둔 머신리 매뉴팩처 코., 래드.
기계식 프레스 브레이크 머신
금속湾곡을 위한 신뢰성과 다용도 있는 솔루션

기계식 프레스 브레이크 머신으로 금속 작업물을 효율적으로 모양내세요

기계식 프레스 브레이크 머신으로 고품질의 결과를 경험하세요
기계식 프레스 브레이크 머신으로 금속 가공의 전 잠재력을 발휘하세요
Why choose 나둔(Nadun)
기계식 프레스 브레이크 머신?
다양한 제품
우수한 품질과 성능:
신뢰성 있는 제품 품질
회사의 전문성과 글로벌 네트워크:
원하는 내용을 찾지 못하셨나요?
지금 견적 요청하기
더 많은 이용 가능한 제품은 전문가와 상담해 주세요.문의하기