...">
,需要通过父级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);
}
});
})();
En tant qu'armée, pour vous aider à voir votre cible même dans le noir, cet outil spécial s'appelle un viseur de fusil à vision nocturne. LSJ Technology Portée de vision nocturne à faible luminosité permet d'observer votre cible dans des conditions de faible luminosité afin que le tir parfait puisse être effectué avec précision. Cependant, tous les viseurs de vision nocturne ne sont pas égaux. Certains sont meilleurs que d'autres, en fonction de vos besoins. Nous allons examiner certains des meilleurs viseurs de vision nocturne pour fusils dans cet article. Il peut s'agir d'un viseur grand et lourd ou d'un petit et léger. Celui que vous choisissez dépend vraiment de la manière dont vous prévoyez de l'utiliser. Si vous partez à la chasse et achetez un viseur pour cette activité, choisissez simplement le plus petit, pas trop grand, qui serait lourd. Si vous tirez quelques coups depuis une position fixe, alors peut-être que le poids du viseur n'aura pas un rôle aussi important. La puissance de grossissement est un autre facteur indispensable à prendre en compte. Cela vous indique à quel point vous pouvez approcher visuellement votre cible ; une faible puissance de grossissement est parfaite pour le tir à courte distance. Si nous le décrivons ainsi : plus vous avez de puissance de grossissement, meilleur cela sera pour le tir à longue portée. Ces informations vous aideront à déterminer quelle puissance est nécessaire pour vos distances de tir spécifiques. Il offre un grossissement allant de 5x à 20x, adapté pour la tir à longue portée. Technologie LSJ. Portée de vision nocturne numérique il dispose également de quelques fonctionnalités utilitaires comme le Calculateur Ballistique qui vous aide à calculer où ira votre balle et le Télémètre, qui permet d'estimer la distance jusqu'à la cible. Cette capacité permet des tirs précis à longue distance plus faciles. Ces lunettes de visée basées sur la vision thermique détectent et localisent les traces de la cible. Elles offrent un puissant grossissement de 2,7-10,8x et peuvent voir des cibles à une distance remarquable d'environ 1800 yards. Avec une caméra HD intégrée, Technologie LSJ. Portée de vision nocturne à faible luminosité non seulement vous permet de filmer vos tirs en appuyant sur un bouton, mais aussi de les regarder en haute définition une fois terminé. Il y a également un mode image dans l'image qui vous permet de zoomer sur votre cible tout en voyant ce qui se passe autour. C'est excellent pour garder une conscience situationnelle. Le viseur de fusil à vision nocturne utilise une technologie d'intensification d'image. Son illuminateur intégré permet de voir même dans l'obscurité totale, ce qui est important si vous chassez la nuit. Ce Portée de vision nocturne numérique design est associé à un contrôle automatique de luminosité qui sélectionne la meilleure sortie en candela pour un environnement lumineux donné. Cela signifie que capturer devient plus facile dans les extrêmes de lumière, donc pas de fatigue oculaire ici. Nos viseurs sont parmi les meilleures marques disponibles qui peuvent vous aider à être un bon tireur avec une vue plus large et une clarté accrue. Il est important de considérer ce que vous voulez ; le coût peut être un facteur majeur. Si vous souhaitez un viseur ultramoderne qui combine l'imagerie numérique et la vision nocturne, jetez un œil à notre meilleur Portée de vision nocturne à faible luminosité ! Depuis 2013, LSJ développe, fournit et commercialise des viseurs de tir haute performance pour les opérations de recherche et de sauvetage ainsi que les meilleurs viseurs de tir à vision nocturne. LSJ a obtenu les certifications ISO 9001, CE et ROHS. Par ailleurs, l’entreprise détient plus de 30 brevets. En tant qu’acteur majeur du secteur, nous sommes en mesure d’investir massivement dans notre département de recherche et de conception. En 2024, LSJ a participé à quatre grands salons internationaux : INTERSEC à Dubaï, Securika 2024, la 18e édition de Defence Services Asia (DSA) et la 3e édition de National Security Asia (NATSEC) en Malaisie, ainsi que le salon NFPA aux États-Unis. En 2025, nous serons présents à INTERSEC, qui se tiendra à Dubaï du 14 au 16 janvier. Notre stand présentera notamment nos caméras thermiques destinées aux interventions des pompiers, des équipements de surveillance audio et vidéo, des détecteurs de gaz, des radars 3D, ainsi que d’autres produits. Nous vous invitons à venir nous rendre visite. LSJ possède plus de 11 ans d’expérience dans la fabrication. L’entreprise se spécialise dans la conception et la réalisation de nouveaux produits adaptés aux scénarios d’utilisation spécifiques de ses clients. Elle améliore en outre continuellement les fonctionnalités de ses produits tout en réduisant leurs coûts. LSJ dispose également d’une grande expérience dans les opérations de secours et de recherche en milieu urbain. Par exemple, lors du séisme survenu en Turquie en 2023, le radar détecteur de vie de LSJ a joué un rôle clé dans les opérations de sauvetage menées par l’équipe chinoise Blue Sky Rescue Team. Choisissez LSJ pour des solutions haut de gamme, fiables et entièrement adaptées à vos besoins. Chez LSJ, nous accordons une grande importance à la fourniture de produits de haute qualité et d’un service exceptionnel à nos clients. C’est pourquoi nous proposons des garanties d’une ou de cinq ans. Cela témoigne de notre confiance dans la qualité et les performances de nos produits. Nous investissons fortement en recherche et développement afin de garantir que nos produits répondent aux normes les plus exigeantes. En tant que fabricant, nous appliquons des normes strictes de contrôle qualité, depuis la conception jusqu’au produit fini. Nous proposons une gamme étendue de produits afin de répondre aux besoins de tous les utilisateurs. Notre stock de composants, de matières premières et d’autres articles est suffisamment important pour assurer une livraison dans les délais. En cas de retard de livraison, nous vous rembourserons jusqu’à 5 % du montant total. Pour vous aider à utiliser nos produits de manière efficace et productive, nous mettons à votre disposition des vidéos tutorielles complètes. Nous offrons également une formation technique sur site, entièrement adaptée à vos besoins spécifiques, afin que vous puissiez maîtriser l’utilisation de nos produits avec aisance et compétence. Choisissez LSJ pour des produits de qualité, fiables, et un service client remarquable. Nous soutenons les services d’incendie et de secours, les services de sécurité publique, les équipes urbaines de recherche et de sauvetage, ainsi que diverses forces militaires. LSJ fournit des équipements innovants pour la lutte contre les incendies, les opérations de recherche et de sauvetage, ainsi que pour l’usage des meilleures lunettes de visée infrarouge pour tir de nuit dans divers secteurs. Caméras thermiques anti-incendie : Notre équipe a conçu deux types de caméras thermiques, chacun offrant trois choix de résolution : 256 × 192, 384 × 288 et 640 × 512. Ces caméras mesurent des températures allant jusqu’à 2000 °C. Équipements de recherche et de sauvetage : Notre sélection comprend des détecteurs de vie à radar, des radars 3D à travers les murs, des moniteurs de stabilité, des systèmes de détection de mouvement et des détecteurs de gaz. Caméras thermiques industrielles : LSJ propose des caméras thermiques utilisées non seulement pour la lutte contre les incendies, mais aussi pour les inspections de bâtiments, les réparations électroniques, la détection de fuites d’eau et l’inspection des systèmes CVC. Lunettes de visée thermique : Nos optiques de vision nocturne sont parfaitement adaptées à l’observation nocturne et très populaires auprès des chasseurs. Elles se montent facilement sur les fusils. LSJ propose des équipements thermiques de haute qualité pour le sauvetage et l’imagerie, répondant aux besoins variés de nombreux secteurs et améliorant ainsi l’efficacité et la sécurité. Choisissez LSJ pour des solutions parmi les plus sophistiquées et les plus fiables. Vous pouvez compter sur LSJ comme votre principal partenaire d’assistance en matière de recherche et de sauvetage urbaines. Chez LSJ, nous sommes des experts dans la fabrication d’équipements de pointe pour les opérations urbaines de recherche et de sauvetage, conçus pour répondre aux normes internationales les plus exigeantes.
Service avant-vente :
Nous sommes à vos côtés dès le début. Nous vous offrons des consultations complètes afin de bien cerner vos besoins et de vous proposer des solutions adaptées. Nous assurons également des démonstrations de produits accompagnées de fiches techniques détaillées, afin que vous disposiez de toutes les informations nécessaires pour prendre une décision éclairée.
Service vente :
Pendant le processus d’achat, nous garantissons une expérience optimale avec notre meilleure lunette de tir à vision nocturne. Grâce à notre système automatisé de gestion des commandes et à un contrôle qualité rigoureux, nous assurons la livraison de vos produits dans les délais impartis et en parfait état. Nous proposons également une livraison clé en main (porte à porte).
Service après-vente :
Une fois vos marchandises reçues, notre partenariat avec vous ne prend pas fin. Nos services après-vente complets comprennent l’assistance à l’installation, la formation des utilisateurs ainsi que l’entretien. Notre service clientèle est toujours à votre disposition pour répondre à toutes vos questions ou préoccupations, afin de garantir votre entière satisfaction. Dès l’achat d’un équipement LSJ, vous bénéficiez d’une garantie de trois ans, ainsi que de services après-vente spécifiques. Choisir LSJ, c’est choisir la confiance, la qualité et un soutien sans égal. Nous serions ravis de devenir votre partenaire dans les domaines de la recherche et du sauvetage urbains, ainsi que dans celui des pompiers. Droits d'auteur © Beijing LSJ Technology Development Co., Ltd. Tous droits réservés
-
Politique de confidentialité
Meilleurs viseurs de fusil à vision nocturne
Découvrez les meilleures lunettes de visée nocturne

Innovation

Utilisation

Obtenez les meilleures lunettes de visée nocturne
Why choose LSJ Technology Meilleurs viseurs de fusil à vision nocturne?
Fabricant d'équipements de recherche et de sauvetage haute performance innovant
Garantir la qualité et la livraison dans les délais : l'engagement de LSJ en matière de satisfaction clientèle
Une chaîne d'approvisionnement complète en équipements pour les opérations de recherche et de sauvetage en milieu urbain
Pourquoi LSJ peut être votre fabricant et fournisseur de produits de préparation ?
Catégories de produits associés
Vous ne trouvez pas ce que vous cherchez ?
Demandez un devis maintenant
Contactez nos consultants pour plus de produits disponibles.Contactez-nous