New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner
2 / 7

New High Speed Hand Held Fan Cooler Portable Air Conditioner Portable Fan Rechargeable Mini Air Conditioner

Color - High Speed White
Please select a color
Size
Please select a size
Price
$19.29
$0.00

Quantity

Overview:

LED Digital Display: Intelligent digital display.
USB Charging: Large-capacity battery, long-lasting battery life.
Two Modes of Use: Handheld or desktop stand on the table.
Compact and Portable: Can be carried around, could be placed in a bag, go out and play without burden.
Infinite Control: One click adjustment of 100 speed ranges


Product Information:
Power type: lithium battery
Color: high speed-white, high speed-navy blue, high speed-beige, cold compress-white, cold compress-beige, low-speed handheld-White
Fan blade material: Plastic
Size: 60*150 * 63mm
Fan Speed Mode: 5 gears
Charging Interface: Type-C


Packing List:
Fan + Charging cable + manual *1


Product Image:
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1726694338796').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);