๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush
๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush

๐Ÿ”ฅHOT SALE ๐ŸŒŸ Multi-Function Rotating Crevice Cleaning Brush

Price

$15.99 $12.99
Save $3.00

color

Please select a color

๐Ÿ”ฅ buy more save more ๐Ÿ”ฅ

Please select a ๐Ÿ”ฅ buy more save more ๐Ÿ”ฅ

Quantity

Global Provision of Services
Free Shipping Over $59.99
Sustainable Manufacturing
PayPal & Credit Card Payment

๐Ÿ ๐Ÿ”Introducing our Multi-Function Rotating Crevice Cleaning Brush! ๐Ÿงนโœจ

Tired of struggling to clean those hard-to-reach crevices and tight spaces? 

Our innovative Multi-Function Rotating Crevice Cleaning Brush is designed to make your cleaning tasks easier, more efficient, and more thorough. 

undefined

With its versatile features and powerful rotating action, it's the ultimate tool for tackling dirt, dust, and grime in every nook and cranny. 

undefined

And our three-in-one cleaning brush has a built-in hair clip, which can easily pick up the hair that blocks the sewer without dirtying your hands. It also comes with a small shovel at the end to easily remove stubborn stains.

undefined

Multi-function rotating crevice cleaning brush

FEATURES

  • โ‡๏ธEffective Cleaningโžค This crack cleaning brush set is designed to effectively remove dust, dirt and debris from small cracks and tight spaces. The ultra-fine PET bristles are strong yet flexible, allowing them to easily reach tight spaces, cracks and corners without scratching or damaging the surfaces being cleaned.

  • โ‡๏ธErgonomic Designโžค Each crevice cleaning brush is designed for comfortable grip and control. The durable plastic handle provides a good grip, allowing you to easily maneuver the brush while cleaning the kitchen sink, bathroom sink or toilet lid.

  • โ‡๏ธVersatile Useโžค These gap cleaning brushes can be used on different surfaces. Whether you need to clean your car dashboard, keyboard, air vents, kitchen appliances, bathroom fixtures, tiles, shower door tracks, sink drains , oven, turntables, sliding door tracks or window frames at home or in the office, this set is for you.

  • โ‡๏ธDurable and Long Lastingโžค These hard bristle cleaning brushes are built to last. They are wear-resistant, allowing you to use them for a long time without worrying that the bristles will lose their effectiveness, even after multiple uses and washes

  • โ‡๏ธEasy to clean and storeโžค This gap cleaning brush can be easily rinsed with water and left to air dry. It is compact and can be stored in drawers, toolboxes or cleaning carts; it also has a small hole for easy hanging, saving space.

SPECIFICATIONS

  • Material: ABS + PP

  • Color: White, Gray, Purple

  • Weight: 78g

  • Size:

  • Package: 1 * Multi-function rotating crevice cleaning brush

NOTE

  • Please allow slight measurement deviations due to manual measurement.

  • Due to the different monitor and light effect, the actual color of the item might be slightly different from the color showed in the pictures.

class SpzSmartBlockComponent extends SPZ.BaseElement { constructor(element) { super(element); this.templates_ = null; this.container_ = null; this.i18n_ = {}; this.config_ = {}; this.show_type_ = 3; this.product_resource_id_ = ''; this.collection_resource_id_ = ''; this.cart_items_ = []; this.customer_id_ = ''; this.order_id_ = ''; } static deferredMount() { return false; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { const template_type = window.SHOPLAZZA.meta.page.template_type; if (template_type === 1) { this.show_type_ = 3; this.product_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 2) { this.show_type_ = 4; this.collection_resource_id_ = window.SHOPLAZZA.meta.page.resource_id; } else if (template_type === 15){ this.show_type_ = 5; } else if (template_type === 13){ this.show_type_ = 6; } else if (template_type === 20){ this.show_type_ = 7; this.customer_id_ = window.SHOPLAZZA.customer.customer_id; } else if (template_type === 35){ this.show_type_ = 8; this.order_id_ = window.location.pathname.split('/').pop(); } this.templates_ = SPZServices.templatesForDoc(this.element); this.setAction_(); } mountCallback() { console.log('appzebu smart mounted'); const that = this; const themeName = window.SHOPLAZZA.theme.merchant_theme_name; const isGeek = /Geek/.test(themeName); this.fetchRules().then((res) => { if (res && res.rules && res.rules.length) { const blockEl = document.getElementById('smart_recommend_block'); SPZ.whenApiDefined(blockEl).then((api) => { api.render({data: res}, true).then(() => { if (isGeek && that.show_type_ === 6) { blockEl.querySelector('.plugin_container_wrpper').style.padding = '30px 0'; } const recommendStyle = document.createElement('style'); recommendStyle.innerHTML = ` .plugin__recommend_container,.app-recommend-card { display: none !important; } `; document.head.appendChild(recommendStyle); const fetchList = []; res.rules.forEach((rule) => { fetchList.push(this.fetchRuleProductList(rule.id)); }); const fetchAll = Promise.all(fetchList); fetchAll.then((p_res) => { res.rules.forEach((rule, index) => { rule.products = p_res[index] && p_res[index].products; const ruleEl = document.getElementById('smart_recommend_rule_' + rule.id); SPZ.whenApiDefined(ruleEl).then((api) => { api.render({data: rule}, true).then(() => { that.impressListen(`#smart_recommend_rule_ul_${rule.id}`, function(){ that.trackRuleImpress(rule); }); const btnElList = document.querySelectorAll(`#smart_recommend_rule_ul_${rule.id} button`); btnElList.forEach((btnEl) => { if (btnEl && rule.config && rule.config.quick_shop_button_bg_color && rule.config.quick_shop_button_text_color) { btnEl.style.backgroundColor = rule.config.quick_shop_button_bg_color; btnEl.style.color = rule.config.quick_shop_button_text_color; } }) }); }); }); }); }) }) } else { if (window.top !== window.self) { const template_type = window.SHOPLAZZA.meta.page.template_type; const holderEl = document.getElementById('smart_recommend_preview_no_data_placeholder'); SPZ.whenApiDefined(holderEl).then((api) => { api.render({data: { isCart: template_type === 13, isCollection: template_type === 2, isProduct: template_type === 1, isIndex: template_type === 15 }}, true); }); } } }); } setAction_() { this.registerAction('quickShop', (data) => { const that = this; const product_id = data.args.product_id; const productIndex = data.args.productIndex; const rule_id = data.args.rule_id; const ssp = data.args.ssp; const scm = data.args.scm; const cfb = data.args.cfb; const ifb = data.args.ifb; const modalRender = document.getElementById('smart_recommend_product_modal_render'); if (product_id) { this.fetchProductData(product_id).then((res) => { const product = res.products && res.products.length && res.products[0] || {}; product.cfb = cfb; product.ifb = ifb; SPZ.whenApiDefined(modalRender).then((api) => { api.render({product: product, productIndex: productIndex, rule_id: rule_id, ssp: ssp, scm: scm, show_type: that.show_type_}, true).then(() => { const modalEl = document.getElementById('smart_recommend_product_modal'); SPZ.whenApiDefined(modalEl).then((modal) => { that.impressListen('#smart_recommend_product_modal', function(){ that.trackQuickShop({ rule_id: rule_id, product_id: product_id }); }); modal.open(); }); const formEl = document.getElementById('smart_recommend_product_form'); SPZ.whenApiDefined(formEl).then((form) => { form.setProduct(product); }); const variantEl = document.getElementById('smart_recommend_product_variants'); SPZ.whenApiDefined(variantEl).then((variant) => { variant.handleRender(product); }); }); }) }); } }); this.registerAction('handleScroll', (data) => { this.directTo(data.args.rule_id, data.args.direction); }); this.registerAction('handleProductChange', (data) => { const variant = data.args.data.variant; const product = data.args.data.product; const imageRenderEl = document.getElementById('smart_recommend_product_image'); SPZ.whenApiDefined(imageRenderEl).then((api) => { api.render({ variant: variant, product: product }); }); }); this.registerAction('handleAtcSuccess', (detail) => { const data = detail.args; data.data.product = data.data.product || {}; data.data.variant = data.data.variant || {}; const product_id = data.data.product.id; const product_title = data.data.product.title; const variant_id = data.data.variant.id; const price = data.data.variant.price; const rule_id = data.rule_id; const aid = `smart_recommend.${this.show_type_}.${rule_id}`; const ifb = data.data.product.ifb; const cfb = data.data.product.cfb; const ssp = data.ssp; const scm = data.scm; const spm = `smart_recommend_${this.show_type_}.${data.spmIndex}`; const params = { id: product_id, product_id: product_id, number: 1, name: product_title, variant_id: variant_id, childrenId: variant_id, item_price: price, source: 'add_to_cart', _extra: { aid: aid, ifb: ifb, cfb: cfb, scm: scm, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, ssp: ssp, } }; this.tranckAddToCart(params); }); this.registerAction('addATCHook', (data) => { const params = data.args; const spm = `smart_recommend_${this.show_type_}.${params.spmIndex}`; this.myInterceptor_ = window.djInterceptors && window.djInterceptors.track.use({ event: 'dj.addToCart', params: { aid: `smart_recommend.${this.show_type_}.` + params.rule_id, ssp: params.ssp, scm: params.scm, cfb: params.cfb, spm: `..${window.SHOPLAZZA.meta.page.template_name}.${spm}`, }, once: true }); }); } tranckAddToCart(detail) { if (window.$) { window.$(document.body).trigger('dj.addToCart', detail); } } fetchRules() { const payload = { show_type: this.show_type_, }; let that = this; if (this.show_type_ === 6) { let line_items = []; return this.fetchCart().then((res) => { if (res && res.cart && res.cart.line_items) { line_items = res.cart.line_items.map((item) => { return { product_id: item.product_id, variant_id: item.variant_id, quantity: item.quantity, price: item.price } }); } payload.line_items = line_items; that.cart_items_ = line_items; return that.fetchRulesRequest(payload); }); } else { if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return this.fetchRulesRequest(payload); } } fetchRulesRequest(payload) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_query", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }); } fetchCart() { return fetch(`/api/cart/cart-select?r=${Math.random().toString(36).slice(-4)}`) .then((res) => { if (res.ok) { return res.json(); } }); } fetchRuleProductList(rule_id) { const payload = { page: 1, limit: 100, fields: ["title", "url", "image", "min_price_variant.price", "min_price_variant.compare_at_price"], rule_id: rule_id, }; if (this.show_type_ === 3) { payload.line_items = [{ product_id: this.product_resource_id_ }]; } else if (this.show_type_ === 4) { payload.collection_id = this.collection_resource_id_; } else if (this.show_type_ === 6) { payload.line_items = this.cart_items_; } else if (this.show_type_ === 7) { payload.customer_id = this.customer_id_; } else if (this.show_type_ === 8) { payload.order_id = this.order_id_; } return fetch(window.SHOPLAZZA.routes.root + "/api/possum/recommend_products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify(payload) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); }); } fetchProductData(product_id) { return fetch(window.SHOPLAZZA.routes.root + "/api/possum/products", { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ product_ids: [product_id], fields: [ "images", "options", "min_price_variant", "variants"] }) }).then(function(res){ if(res.ok){ return res.json(); } }).catch(function(err){ console.log(err); const loadingEl = document.getElementById('smart_recommend_loading'); if (loadingEl) { loadingEl.style.display = 'none'; } }); } getStyle(ele, style) { if (!ele) return; if (window.getComputedStyle) { return window.getComputedStyle(ele)[style]; } return ele.currentStyle[style]; } directTo(id, direction) { const scrollElement = document.getElementById(`smart_recommend_rule_ul_${id}`); const blockWidth = parseInt(this.getStyle(scrollElement, 'width')); const scrollLength = (blockWidth * 0.19 - 12) * 5; const scrollPoint = scrollElement.scrollWidth - scrollElement.clientWidth; if (!scrollElement) return; if (direction === 'left') { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft - scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: Math.max(scrollElement.scrollLeft - scrollLength, 0), behavior: 'smooth' }); } else { if (document.dir === 'rtl') { scrollElement.scrollTo({ left: Math.abs(scrollElement.scrollLeft) >= scrollPoint + 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); return; } scrollElement.scrollTo({ left: scrollElement.scrollLeft >= scrollPoint - 100 ? 0 : scrollElement.scrollLeft + scrollLength, behavior: 'smooth' }); } } trackRuleImpress(rule) { if (window.sa && window.sa.track) { window.sa.track("plugin_common", { plugin_name: "upsell", event_type: "impressions", rule_id: rule.id, ssp: rule.ssp, scm: rule.scm, show_type: this.show_type_, support_app_block: window.SHOPLAZZA.theme.support_app_block }); window.sa.track("module_impressions", { aid: `smart_recommend.${this.show_type_}.${rule.id}`, support_app_block: window.SHOPLAZZA.theme.support_app_block }); } } trackQuickShop(data) { window.sa && sa.track && sa.track("plugin_common", { plugin_name: "upsell", event_type: "quick_shop", rule_id: data.rule_id, product_id: data.product_id, show_type: this.show_type_, }); } impressListen(selector, cb) { const el = document.querySelector(selector); const onImpress = (e) => { if (e) { e.stopPropagation(); } cb(); }; if (el && !el.getAttribute('imprsd')) { el.addEventListener('impress', onImpress) } else if (el) { onImpress(); } } } SPZ.defineElement('spz-custom-smart-block', SpzSmartBlockComponent);