Android-thermischebeeldcamera's ontworpen om u te laten zien wat er in het donker gebeurt...">
,需要通过父级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);
}
});
})();
Ben je moe van het willen zien in het donker? LSJ Technology heeft een reeks ontworpen van android thermische beeldcamera om je te laten zien wat er gebeurt in het donker. Deze tools laten zien wat zich verschuilt in het donker, en ze zijn slim daarin. Wees gerust dat het een fluitje van een cent zal zijn met deze versterkers om je weg te vinden in het donker. LSJ Technology heeft een prachtig assortiment aan infraroodcamera voor android apparaten die bekend staan om hun ongeëvenaarde precisie. Deze zijn zeer betrouwbaar en leveren uitstekende resultaten ongeacht het weer. Zelfs als het mistig en regenachtig is, zullen de vizieren je goed dienen. Nog beter, je kunt ze zowel overdag als 's nachts gebruiken! Het is uitgerust met hightechkenmerken zodat je duidelijk kunt waarnemen in schemering. Zo kun je je dromen van buitenactiviteiten realiseren wanneer je maar wilt en zonder beperkingen. Het beste aan de thermische beeldversterkingscamera van LSJ Technology is dat deze snel en effectief kan worden gebruikt als je wilt vinden wat verborgen is. Met unieke technologie kun je hiermee essentieel hitte zien. Met andere woorden, je kunt in het donker kijken en dieren (of wildplunderaars) ontdekken die onzichtbaar zouden zijn voor het blote oog. Dat maakt ze geschikt voor alle soorten mensen. Ze zijn fantastisch in het vinden van dingen en worden meestal gebruikt door jagers die op zoek zijn naar iets om te schieten. Ze kunnen ook handig zijn voor politieagenten en soldaten om na te gaan wie zich verbergt in een beperkte locatie. Als je van jagen houdt en wilt worden beter jager, heeft LSJ Technology de perfecte oplossing! Deze unieke nachtzichtvizier online kan je jachtvaardigheden naar een hoger niveau tillen, net zoals hun thermische beeldvormende vizieren. 's Nachts jagen maakt het zeer moeilijk om dingen te zien. Toch krijg je met deze speciale vizieren een beter zichtveld, wat betekent dat het volgen van je doelwit gemakkelijker moet zijn. Vanaf dit punt ga je met meer zelfvertrouwen op jacht en weet je dat je alle gereedschappen hebt om de balans verder in jouw voordeel te laten doorslaan. Gebruik je een thermisch beeldvormend vizier, dan staat de volgende keer een perfecte jacht voor je klaar. Je voelt je veel veiliger zodra de nacht valt als je de thermische beeldversterkers van LSJ Technology gebruikt. Deze versterkers zijn perfect voor het jagen en bieden je hoge definitie afbeeldingen om praktisch in het donker te kunnen zien, terwijl je een wandeling maakt rond je plek. Zo kun je gevaren van veraf zien, en heeft niemand enig idee wie of waar je bent. Dit laat je beter zien en blijven beschermen wanneer je buiten bent in het donker. Sinds 2013 ontwikkelt, levert en verkoopt LSJ hoogwaardige zoek- en reddingsapparatuur en brandweerapparatuur. LSJ heeft certificaten ontvangen van ISO9001, CE en ROHS. Daarnaast bezit het meer dan 30 octrooien. Als toonaangevend bedrijf investeren wij aanzienlijk in onze afdeling voor ontwerp en onderzoek. In 2024 nam LSJ deel aan vier grote internationale evenementen: INTERSEC, Securika, de 18de Defence Services Asia en de 3de National Security Asia in Maleisië, en de NFPA in de Verenigde Staten. Wij zijn ook geregistreerd voor deelname aan INTERSEC in de categorie thermische beeldvorming van 14 tot en met 16 januari 2025, waar wij onze radar live-detector, een 3D-radar die muren kan doordringen, gasdetectoren, audio- en videoluisterapparatuur, stabiliteitsbewakingsapparatuur en thermische camera’s voor brandbestrijding zullen presenteren. Wij nodigen u van harte uit om onze stand te bezoeken. LSJ beschikt over meer dan 11 jaar ervaring in de productie. Het bedrijf is gespecialiseerd in het ontwikkelen en produceren van nieuwe producten op basis van de specifieke gebruikssituaties van klanten. Daarnaast blijft LSJ de capaciteiten van zijn producten verbeteren en de kosten verlagen. LSJ heeft een ruime expertise op het gebied van stedelijke reddings- en zoekoperaties. Zo speelde de LSJ-radarlevensdetector bijvoorbeeld een cruciale rol bij de reddingsinspanningen van het Chinese Blue Sky Rescue Team tijdens de aardbeving in Turkije in 2023. Kies LSJ voor betrouwbare, geavanceerde oplossingen die specifiek op uw behoeften zijn afgestemd. Wij bieden ondersteuning aan brandweer- en reddingsdiensten, evenals aan openbare veiligheidsdiensten en stedelijke reddingsteams. LSJ beschikt over innovatieve apparatuur voor het bestrijden van branden en het uitvoeren van thermische beeldvorming in explosieve omgevingen binnen verschillende industrieën. Thermische camera's voor brandbestrijding: Wij hebben twee soorten thermische camera's onderzocht en ontworpen, elk met drie resolutieopties: 256×192, 384×288 en 640×512. Deze camera's kunnen temperaturen meten tot 2000 °C. Reddingsmateriaal: Onze selectie omvat radarlevensdetectoren, 3D-radars door muren heen, stabiliteitsmonitors, bewegingsbewakingssystemen en gasdetectoren. Industriële thermische camera's: Naast thermische camera's voor brandbestrijding biedt LSJ handbediende thermische camera's aan voor lekdetectie in waterleidingen, gebouwinspecties, elektronisch herstel, detectie van warmteverlies bij vloerverwarming en inspectie van HVAC-systemen. Thermische vizieren: Onze nachtzichtoptiek is ideaal voor zichtbaarheid 's nachts en zeer populair bij jagers. Deze vizieren kunnen eenvoudig op geweren worden gemonteerd. LSJ biedt thermische reddings- en beeldvormingsapparatuur van topkwaliteit die voldoet aan de behoeften van uiteenlopende sectoren en de efficiëntie en veiligheid verhoogt. Kies LSJ voor de meest geavanceerde en betrouwbare oplossingen. Vertrouw op LSJ als uw eerste partner bij stedelijke zoek- en reddingsoperaties. Wij van LSJ beseffen hoe belangrijk thermische imaging-scopes zijn om onze klanten superieure producten en uitstekende service te bieden. Daarom bieden wij garanties die één of vijf jaar gelden. Dit weerspiegelt ons vertrouwen in de kwaliteit van onze producten. Wij investeren zwaar in onderzoek en ontwikkeling om ervoor te zorgen dat onze producten voldoen aan de hoogste normen. Als fabrikant hanteren wij strenge kwaliteitscontroleprocessen, vanaf het begin bij de grondstoffen tot aan de productie. Wij bieden een breed scala aan producten die aan de behoeften van elke gebruiker voldoen. Onze voorraad grondstoffen, componenten en andere producten is voldoende om te garanderen dat u uw bestelling op tijd ontvangt. Indien wij niet op tijd kunnen leveren, beloven wij onze klanten een terugbetaling van 2% tot 5% van de aankoopwaarde. Om u te ondersteunen bij het gebruik van onze producten, verstrekken wij uitgebreide instructievideo’s. Bovendien kunnen wij onze technische medewerkers op locatie laten komen om specifiek op uw behoeften afgestemde praktijkinstructie te geven, zodat u onze producten met vertrouwen en gemak kunt gebruiken. Kies LSJ voor betrouwbare, hoogwaardige producten en uitstekende klantenservice. LSJ is een pionier op het gebied van de ontwikkeling van hoogwaardige uitrusting voor stedelijke zoek- en reddingsoperaties die compatibel is met thermische beeldvorming. Pre-sales service: Ons team van specialisten staat u vanaf het begin ter zijde. Wij bieden uitgebreide consultaties om uw specifieke behoeften te begrijpen en passende, op maat gemaakte oplossingen aan te bieden. Daarnaast verstrekken wij productdemonstraties en gedetailleerde technische specificaties, zodat u alle benodigde informatie hebt om een weloverwogen beslissing te nemen. Sales service: Wij garanderen dat het gehele verkoopproces naadloos en efficiënt verloopt. Ons efficiënte bestelsysteem, gecombineerd met strenge kwaliteitscontrolemaatregelen, waarborgt dat uw artikelen op tijd en in perfecte staat bij u aankomen. Wij bieden ook deur-tot-deurlevering. After-sales service: Na levering van uw goederen eindigt onze samenwerking met u niet. Wij bieden uitgebreide ondersteuning na verkoop, zoals hulp bij installatie, gebruikerstraining en onderhouds- en reparatiediensten. Onze klantenservicevertegenwoordigers staan klaar om u te helpen bij eventuele vragen of problemen, zodat u volledig tevreden bent. Nadat u uitrusting van LSJ heeft gekocht, bieden wij een garantie van drie jaar en ontvangt u specifieke after-salesondersteuning van ons. Kiezen voor LSJ betekent kiezen voor betrouwbaarheid, kwaliteit en ongeëvenaarde service. Wij willen uw partner zijn bij stedelijke zoek- en reddingsoperaties én brandbestrijding. Copyright © Beijing LSJ Technology Development Co., Ltd. Alle rechten voorbehouden
-
Privacybeleid
thermische beeldversterkingskijker
Ervar ongekende precisie met een thermische beeldversterkingskijker

Ontdek verborgen doelen gemakkelijk met een thermische beeldversterkingskijker

Verhef je jachtvaardigheden naar een hoger niveau met een thermische beeldversterkingskijker

Vind je weg in het donker met vertrouwen met behulp van een thermische beeldversterkingskijker
Why choose LSJ Technology thermische beeldversterkingskijker?
Innovatieve hoogwaardige zoek- en reddingsapparatuur fabrikant
Een volledige keten voor het leveren van uitrusting voor stadsonderzoek en -redding
Kwaliteit en punctuele levering waarborgen: de toewijding van LSJ aan klanttevredenheid
Waarom kan LSJ uw primaire fabrikant en leverancier zijn?
Gerelateerde productcategorieën
Niet vinden wat u zoekt?
Vraag nu een offerte aan
Neem contact op met onze consultants voor beschikbare productenNEEM CONTACT OP