Är du trött på att din maskinpark konstant fungerar fel och påverkar din produktivitet? Vill du veta om ett verktyg som kan ... ">
,需要通过父级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++) {
;(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_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()
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() {
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')
// 回调函数
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)
}
})
})();
"Läs mer om stödhet för balskrufva – Det verktyg som förbättrar prestationen hos din maskinpark." Är du trött på att din maskinpark konstant fungerar fel och påverkar din produktivitet? Vill du veta om ett verktyg som kan göra din maskinpark att arbeta bättre och effektivare? Titta inget längre än Jingpeng bollskruvstödseinhet . Ballskruvstödsmodulen är ett designat verktyg för att hindra dina leddskruvor från att rotera, vilket betydligt ökar noggrannheten i din maskins rörelse. Det minskar också slitage på maskinen, vilket gör Jingpeng Stödenhetsenhet mer effektivt. Dessutom minskar skruvstödsmodulen belastningen på maskinen, vilket förlänger dess livslängd och minskar underhållskostnaderna. Denna verktyg är idealisk för maskiner som kräver precision och noggrannhet, såsom CNC-maskiner, fräsmaskiner och tornmaskiner. Skruvstödsmodulen är ett innovationsprodukt som har kommit till genom framsteg inom maskinteknik. Jingpeng reparation av ballscrew består av högkvalitativa material, vilket säkerställer dess hållbarhet och långlivadehet. Dessutom är dess design optimerad för minimal tolerans, vilket möjliggör att flera maskinmekanismer fungerar mer exakt och sammanhängande. Varje förbättring i designen har testats och förbättrats, vilket bevisar att den uppfyller produktionsteamets strikta standarder. Skruvstödsmodulen är en av de säkraste verktygen att använda när man bedriver maskiner. Jingpeng cnc ball screw att hålla påverkar verktyget positionssignalen med noll spel. Detta är avgörande, eftersom det elimineras risken för olyckor, vilket kan leda till skador på maskinerna eller, ännu värre, personal. Verktyget är också utformat med en självskyddande mekanism som förhindrar överbelastning och skador orsakade av maskinskador. Genom att använda stödheten för bollscrew säkerställs att maskinerna fungerar säkert med minimerade skador. Stödheten för bollscrew är enkel att installera och använda, vilket gör den till ett idealiskt verktyg för personer som inte har tidigare utbildning i maskinoperation. Jingpeng ballscrewskruv levereras med instruktioner som visar hur du installerar och använder den, vilket säkerställer att du upplever fördelarna den ger inom kort tid. Enheten är också utformad för att vara anpassningsbar, vilket betyder att den fungerar med olika maskiner, vilket minskar behovet att använda olika verktyg. Jingpeng Machinery grundades 2015 med huvudkontor i Shanghai och ska etablera en EU-näst i Polen 2022. Jingpeng Machinery fortsätter att fördjupa sin närvaro i världen. Tio år senare är YOSO nu en fullt integrerad handels- och industriplattform för mekaniska transmissioner med egen varumärke och internationella patent. Jingpeng har haft en företagsstil som betonar "varumärkeskvalitet, service som varumärke" sedan starten. YOSO-märket gör det möjligt för oss att delta i internationella utställningar inom området varje år. Kvalitet ligger i hjärtat av YOSOs långsiktiga utveckling. Service gör att kunderna kan bli partners inom bollscrew-stöd. Jingpeng Machinery är en ledande marknadsplats för att köpa industri 4.0-mekaniska växlar. Förtröstan har byggts på 10 år av produktion av perfekta produkter, 190 tekniska experter som praktiserar, 24 moderna produktionslinjer och en produktionsbas på 50,000 m2. Varje mekaniska transmissionssortiment väljs noggrant ut bland tillverkningsmetoder. YOSO är engagerad i att producera perfekta produkter. YOSO ball screw support unit expert in alla slags mekaniska transmissioner. Massiv, nybyggd 6-meters CNC-produktionslinje tillhandahåller enskilda 6-meters rullningsguidestångar producerade i partier. Största dimension guidestång 125. Guidestångar finns i ett fullt utbud av 25, 30, 35, 55, 65, 85, 100, 125. Enstaka skjutning kan stödja maximal vikt på 192t. Skruvproduktionsbasen används för att göra partier med minimi Ph6mm och en lead 1mm och maximalt Ph245mm, skruvlängd upp till 10m med maximal dynamisk last upp till 125 ton. Det levererar 2-meters C1-nivå, 3-meters C2-nivå partier, 5-meters C3-nivå, 10 meters C5-nivå olika ballscrew-par. YOSO Motion, bästa partner för linjära system. Vi ska samarbeta för att hjälpa och stödja Industri 4.0. Motivera idén Made i Kina. Lösning för integrering av flera produkter YOSO, erbjuder fullständig kontroll över sändningskomponenter som kan köpas på ett ställe för att uppfylla kraven på våra kunder. Vi är fast besluta att hjälpa våra kunder att bli mer konkurrenskraftiga på marknaden genom att erbjuda högkvalitativa lösningar inom tillverkning, effektivitet samt kapacitet för produktkvalitet i ballskruvssupportenheterna. Vår produktråd har en bred utbud av överlägsen prestanda och har vunnit förtroendet på marknaden tack vare vår djupa förståelse för kundkraven. Partnernätverk runt om i världen har etablerat närmare relationer med YOSO, vilket gör att YOSOs internationella strategi möjliggör att YOSO-märkta dealernas nätverk når kunderna i deras regioner via ett globalt nätverk. Om du vill vara involverad och bli en del av YOSO-märket, kontakta oss! Varumärke: 10 år deltagande i internationella utställningar Kvalitet i hjärtat hållbar utveckling ballskruvstödsmodul: Kunder partners Drivmedelslösningar YOSO tränade experter inom fältet för drivmedelskomponenter inom företaget kan perfekt analysera kundens ritningskrav, 3D-färdiga produktmodeller som underlättar produktionen. Branschutbyte YOSO är en av de främsta förespråkarna för alla välkända branschevenemang som hölls runt om i världen och var en deltagare i dessa. utbyten mellan praktikererna framåtblickande tillämpning entreprenörskap ledande företag är viktig jord för vår tillväxt. Stödheten för balskrufvan tillverkas under strikt övervakning för att säkerställa att dess kvalitet uppfyller de nödvändiga standarderna. Dessutom erbjuder tillverkarna stödsystem om du stöter på några problem med ditt verktyg. Kundtjänst är tillgänglig dygnet runt för att ge vägledning och hjälpa till att åtgärda eventuella problem du kan stöta på. Kvaliteten på produkten kombinerat med utmärkta kundtjänster gör att Jingpeng ballscrew är ett idealiskt verktyg för dem som söker att investera i förbättringen av sin maskinpark.
Upphovsrätt © Jingpeng Machinery&Equipment(Shanghai) Co.,Ltd Alla rättigheter förbehålls
Bollskruvstödseinhet
Fördelar med stödenheter för bollskruvor

Innovation hos stödenheter för bollskruvor

Säkerhet hos stödenheter för bollskruvor

Användning av stödenheter för bollskruvor
Why choose Jingpeng Bollskruvstödseinhet?
Företagsprofil YOSO
YOSO erbjuder mer konkurrenskraftiga produkter
Bästa partner för linjär rörelse
Industrie 4.0 bästa plattform
Service och kvalitet hos stödenheter för bollskruvor
Hittar du inte det du letar efter?
Begär offert nu
Kontakta våra konsulter för fler tillgängliga produkter.