Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink
Universal Drain Strainer for Bathroom Sink

Universal Drain Strainer for Bathroom Sink

Price

$39.99 $19.99
Save $20.00
2189 sold
20% OFF 2nd item
30% OFF 3rd item
50% OFF 4th item

💖buy more save more💖

Please select a 💖buy more save more💖

Quantity

It's been recommended by 6.19K people
Free shipping over $49
Sustainably made
Secure payments
/** @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-1539149753700').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);

Features:

  • Universal, Fits Most Sink Holes: Our pop-up sinkstopper has an inner diameter range from 1.1 inches to1.45 inches, which is widely applicable to wash basinsbathroom sink drains and shower tub drains. lt fits 99%of sink holes and fits tightly. Whether it is a wash basin,bathroom sink or shower tub, this stopper is compatibleand reliable.

  • High-quality materials:  This sink stopper is made ofdurable brass core structure to ensure a long service life.Simple installation -just replace the old stopper with thisone, and enjoy worry-free maintenance, making it areliable choice for your bathroom sink.

  • Easy to install and clean:  This sink drain stopper has asimple design and structure, and the installation processis simple and convenient. No cumbersome tools arerequired, eliminating the high cost of installing waterpipes.Just insert the new bathroom sink drain stopperinto the drain hole, it can be easily replaced, and cleaningand maintenance are simple.

  • Efficient drainage and anti-clogging: Efficientdrainage and anti-clogging become the new standard foryour bathroom,choose our sink stopper. With itsadvanced design, it keeps your sink clean and reducesmaintenance requirements,allowing you to enjoy a freshand comfortable bathroom environment.

  • Efficient Drainage and Anti-Clog: Get rid of annoyingpipe cleaning! This low-maintenance sink drain filteradopts a smart design and comes with an anti-cloggingbasket strainer, providing you with an effective solutionto keep your bathroom clean and comfortable at alltimes.

Specifications:

  • Material: ABS + brass core + 304 stainless steel mesh basket

  • Style: as shown

  • Type: Pop-up

  • Size:

Package:

  • 1/2 * Push to bounce core

Note:

  • Please allow for slight measurement differences due to manual measurements.

  • Due to the diversity of screens and the effect of light, the actual colour of the item may differ slightly from that shown in the photos.