is een speciaal soort brancard waarmee gewonde personen veilig kunnen worden verplaatst. Deze brancard bestaat uit twee delen...">
,需要通过父级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 || nodeText || '');
if (phoneReg.test(str) && numUseReg.test(str)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
phone: nodeText,
},
}, '*');
_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;
if (phoneReg.test(fatherText) && numUseReg.test(fatherText)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
phone: nodeText,
},
}, '*');
_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)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
email: 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')) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
email: content,
},
}, '*');
_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)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
email: 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)) {
window.postMessage({
type: 'SHOPS_CONTACT_TRACK',
data: {
email: 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);
}
});
})();
Een Medisch scheplepelbrancard is een speciaal soort draagbaarheid die helpt om gewonde personen veilig te verplaatsen. Deze draagbaarheid bestaat uit twee delen die rond de persoon samenvallen. Dit is zeer nuttig in noodsituaties waarin een persoon zich niet kan bewegen, omdat hij of zij mogelijk ernstig gewond is. De scoopdraagbaarheid is ontworpen om de persoon stabiel te houden en geen verdere verwondingen te veroorzaken tijdens het verplaatsen. Bij XIEHE MEDICAL zorgen wij ervoor dat onze scoopdraagbaarheden sterk en betrouwbaar zijn, zodat ze in verschillende situaties kunnen worden gebruikt, zoals bij ongelukken of medische noodsituaties. Een andere belangrijke functie is de verstelbaarheid van de draagbrancard. Sommige brancards kunnen licht worden aangepast om aan mensen van verschillende lichamsgrootten te voldoen. Dit kan een groot verschil maken, omdat niet iedereen even groot is. De brancard moet ook gemakkelijk schoon te maken zijn. In noodsituaties kan het rommelig worden, dus het is handig om over een brancard te beschikken die snel kan worden afgeveegd. Controleer ook of de brancard in smalle ruimtes past. Soms moeten hulpverleners personen uit kleine ruimtes verplaatsen, en een brancard die gemakkelijk past, is dan zeer nuttig. Bovendien biedt XIEHE MEDICAL een verscheidenheid aan Ziekenhuismeubelen die onze schepbrancards aanvult, waardoor een volledige oplossing voor noodsituaties wordt gewaarborgd. Het is ook verstandig om naar recensies te zoeken of andere hulpdiensten te vragen naar hun ervaringen. Zij kunnen delen wat voor hen wel en niet werkte. Als u een paar opties hebt gevonden, probeert u deze, indien mogelijk, persoonlijk te bekijken. Dit geeft u de kans om te testen hoe gebruiksvriendelijk ze zijn en hoe stevig ze aanvoelen. Bij XIEHE MEDICAL bieden wij een reeks scoop stretchers die voldoen aan de behoeften van verschillende gebruikers. Ons doel is om ervoor te zorgen dat elke stretcher die wij maken op de meest effectieve manier mogelijk kan bijdragen aan het redden van levens. Medische schepdraagbordens zijn speciale hulpmiddelen die door artsen en EHBO’ers worden gebruikt om patiënten veilig te vervoeren. Ze zijn ontworpen voor noodsituaties zoals auto-ongelukken of wanneer iemand gewond is en zich niet kan bewegen. Een van de grootste voordelen van schepdraagbordens is dat ze in twee delen kunnen worden gesplitst. Dit betekent dat medisch personeel de draagborden onder een patiënt kan schuiven zonder de patiënt veel te hoeven verplaatsen. Het verplaatsen van een gewonde persoon kan soms de verwondingen verergeren, maar met een schepdraagbord wordt dit risico verminderd. Daarnaast is het zeer licht van gewicht, waardoor het gemakkelijk te dragen is voor EHBO’ers. Comfort is een ander belangrijk aspect bij het gebruik van een schepdraagbaar. Wanneer iemand gewond is, kan hij of zij bang of pijnlijk zijn. De zachte bekleding op de draagbaar helpt om zich comfortabeler te voelen. Dit is belangrijk, omdat het kan bijdragen aan het kalmeren van de patiënt. De draagbaar houdt de patiënt ook stil, zodat hij of zij tijdens het vervoer niet te veel beweegt. Dit helpt om verdere letsel te voorkomen. Bij XIEHE MEDICAL richten we ons op het maken van schepdraagbaren die niet alleen veilig zijn, maar ook comfortabel voor patiënten. We weten dat een patiënt die zich veilig voelt, eerder mee wil werken met medisch personeel, wat kan bijdragen aan snellere zorg. Het ontwerp van onze schepdraagbaren stelt het medische team in staat zich te concentreren op de gezondheid van de patiënt, met de zekerheid dat deze veilig en comfortabel naar het ziekenhuis of andere behandelruimten wordt vervoerd. Bij medische apparatuur is veiligheid zeer belangrijk. Het is cruciaal om ervoor te zorgen dat uw schepdraagbaarheid voldoet aan alle noodzakelijke veiligheidsnormen. Dit betekent dat de draagbaarheid sterk genoeg moet zijn om een patiënt te dragen zonder te breken. Bij XIEHE MEDICAL ontwerpen wij onze schepdraagbaarheden zodanig dat zij voldoen aan strenge veiligheidsrichtlijnen. Een manier om te controleren of een draagbaarheid veilig is, is het opsporen van certificaten en keurmerken van gezondheidsorganisaties. Deze certificaten tonen aan dat de draagbaarheid is getest en als veilig wordt beschouwd voor gebruik. Een andere belangrijke factor is om de draagbrancard regelmatig te controleren op beschadiging. Dit betekent dat u op zoek moet gaan naar scheuren, barsten of andere tekortkomingen die de draagbrancard onveilig kunnen maken. Indien een onderdeel van de draagbrancard beschadigd is, mag deze niet worden gebruikt totdat het is gerepareerd of vervangen. Het is ook belangrijk om de scoopdraagbrancard schoon te houden. Als de draagbrancard niet correct wordt gereinigd, kunnen bacteriën en ziekteverwekkers zich verspreiden, wat patiënten ziek kan maken. Desinfecterende doekjes of spuitmiddelen kunnen helpen om de draagbrancard veilig te houden voor patiënten. Personeel dient ook te worden opgeleid in het juiste gebruik van de draagbrancard. Kennis van de juiste manier om de brancard op te tillen en te positioneren helpt ongelukken en verwondingen te voorkomen. Al deze stappen zijn essentieel om ervoor te zorgen dat uw medische scoopdraagbrancard veilig is en klaarstaat voor gebruik wanneer dat het meest nodig is. Xiehe Medical Apparatus Instruments heeft zich toegewijd aan een globale marketingsverkoopstrategie. Ze hebben meer dan 30 distributoren die opereren in meer dan 120 landen, na meer dan 10 jaar ondersteuning van onze partners. We streven ernaar om langdurige relaties op te bouwen met distributoren en integrators om samen de toekomst van de ambulance brancard te vormen. Hehe Medical Equipment stelt klanttevredenheid voorop en streeft ernaar om de wensen van klanten te vervullen met uitmuntendheid op hoog niveau en betrouwbaarheid. Toegewijde medewerkers en samenwerkende technologie stellen ons in staat om klanten nauwgezette service te bieden met het Air splint kit-pakket, zodat de behoeften van klanten doeltreffend worden aangepakt. Wij streven ernaar om een langetermijn, solide samenwerking met onze klanten op te bouwen en hen hoogwaardige producten en diensten aan te bieden. Als professionele fabrikant van medische apparatuur biedt Xiehe Medical Apparatus Instruments hoogwaardige producten en gespecialiseerde diensten. Wij implementeren strikt het ISO13485-kwaliteitscontrolesysteem en al onze producten zijn gecertificeerd door TÜV, CE en FDA, en nog veel meer. Ons team voor luchtspalken kan snel inspelen op de wensen van klanten en levert hoogwaardige en stabiele producten. Wanneer u een ambulancebrancard of een opvouwbare brancard, meubilair voor ziekenhuizen of begrafenisartikelen nodig heeft, biedt Xiehe Medical Equipment de oplossing. Xiehe Medical Apparatus Instruments is voortdurend actief in innovatief O&O en wij zijn toegewijd aan het leveren van producten met concurrerende verkooppunten. Patents en intellectuele eigendomsrechten beschermen onze brancards, luchtspalken, EHBO-artikelen, meubilair voor ziekenhuizen en begrafenisproducten. Onze producten zijn ontworpen om aan te sluiten bij de huidige trends en aan de behoeften van onze klanten te voldoen. Zij worden gewaardeerd door zowel binnenlandse als buitenlandse klanten.medische schepbrancard
Waarop u moet letten bij een medische scoopbrancard van hoge kwaliteit

Hoe u de beste medische scoopbrancard kiest voor noodsituaties

Hoe medische scoopbrancards de veiligheid en het comfort van patiënten verbeteren

Hoe u kunt waarborgen dat uw medische scoopbrancard voldoet aan veiligheidsnormen
Why choose XIEHE MEDICAL
medische schepbrancard?
Wereldwijde marketingsnetwerk en stabiele partners
Klantgericht Snelle nasale service en technische ondersteuning
Hoge kwaliteit producten en gespecialiseerde diensten
Innovatieve Onderzoek en Ontwikkeling en Productverkooppunten
Gerelateerde productcategorieën
Vindt u niet wat u zoekt?
Vraag nu een offerte aan
Neem contact op met onze consultants voor meer beschikbare producten.Neem contact op