Free shipping over $40
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
1 / 12
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
Glasses Cleaning Kit
0% OFF
Save $-12.99
bredark

Glasses Cleaning Kit

$12.99
1 sold
Num
Qty
Are you tired of greasy smudges on your eyeglass lenses? Are you frustrated by cleaners that don't leave your glasses squeaky clean? The Eyeglass Cleaning Kit is the perfect solution!

Main Features

  • UNIQUE TECHNOLOGY
    The Eyeglass Cleaning Kit is an efficient and durable ground-breaking carbon microfiber tech that cleans all glasses.
  • EXTREMELY EFFECTIVE
    A very effective dry-clean technology, substance-free, that is also used exclusively in space by NASA to clean glass.
  • SAFE TO USE
    It won't damage the special coating of the eyeglass lens. Safe technology for designer glasses as well as normal reading glasses.
  • A BETTER VIEW
    The Eyeglass Cleaning Kit leaves your glasses and sunglasses free of any residue, including fingerprints, streaks, smudges and more!

Usage Scenarios

  • Designed specifically for cleaning eyeglasses, sunglasses, and reading glasses.

Using Methods

  • Step 1: Use the retractable brush to remove dust and other potentially scratchy particles.
  • Step 2: Slide arms out of cap and place lens between them, Squeeze gently on either side to close microfiber on the lens and move to cover the entire surface.
         

      Specification

      Materials
      • ABS
      Colors
      Black
      • White
      • Gold
      • Blue
      • Purple
      Product Weight
      • 43g
      Package Contents
      • Eyeglass Cleaning Kit × 1 pc or 2 pcs
      Product Size

       

      Note

      • Due to manual measurements, please allow slight measurement deviations.
      • Due to the different display and lighting effects, the actual color of the item may be slightly different from the color displayed on the picture.
      /** @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-1711005325228').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);