{
if (img && !validImages.includes(img)) {
validImages.unshift(img);
}
});
if ($event.detail.images.length > 0) activeImg = $event.detail.images[0];
} else if ($event.detail.image) {
activeImg = $event.detail.image;
if (!validImages.includes($event.detail.image)) {
validImages.unshift($event.detail.image);
}
}
}
"
x-data="{
activeImg: '/storage/products/sku_mop6725_20.png',
showLightbox: false,
lightboxIndex: 0,
zoom: false,
savedScrollY: 0,
validImages: [],
imgAspect: 1,
zoomLevel: 1,
panX: 0,
panY: 0,
isDragging: false,
dragStartX: 0,
dragStartY: 0,
startPanX: 0,
startPanY: 0,
async init() {
const primary = '/storage/products/sku_mop6725_20.png';
const extraImgs = JSON.parse('[\u0022\\\/storage\\\/products\\\/sku_mop6725_20.png\u0022,\u0022\\\/storage\\\/products\\\/sku_mop6751_21.png\u0022]');
const allImgs = Array.from(new Set([primary, ...extraImgs])).filter(Boolean);
const checks = await Promise.all(allImgs.map(async (src) => {
try {
const resp = await fetch(src, { method: 'HEAD' });
return resp.ok ? src : null;
} catch { return null; }
}));
this.validImages = checks.filter(Boolean);
if (this.validImages.length === 0) {
this.validImages = [primary];
}
this.activeImg = this.validImages[0];
},
onImgLoad(el) {
if (el && el.naturalWidth && el.naturalHeight) {
this.imgAspect = el.naturalWidth / el.naturalHeight;
}
},
openLightbox(i) {
this.lightboxIndex = i >= 0 ? i : 0;
this.zoomLevel = 1;
this.resetPan();
this.showLightbox = true;
document.documentElement.style.overflow = 'hidden';
document.body.style.overflow = 'hidden';
document.body.style.touchAction = 'none';
document.body.classList.add('overlay-open');
document.documentElement.classList.add('overlay-open');
},
closeLightbox() {
this.showLightbox = false;
this.zoomLevel = 1;
this.resetPan();
document.documentElement.style.overflow = '';
document.body.style.overflow = '';
document.body.style.touchAction = '';
document.body.classList.remove('overlay-open');
document.documentElement.classList.remove('overlay-open');
},
zoomIn() {
if (this.zoomLevel < 2.5) this.zoomLevel = parseFloat((this.zoomLevel + 0.25).toFixed(2));
},
zoomOut() {
if (this.zoomLevel > 1) {
this.zoomLevel = parseFloat((this.zoomLevel - 0.25).toFixed(2));
if (this.zoomLevel === 1) this.resetPan();
}
},
resetZoom() {
this.zoomLevel = 1;
this.resetPan();
},
resetPan() {
this.panX = 0;
this.panY = 0;
this.isDragging = false;
},
startDrag(e) {
if (this.zoomLevel <= 1) return;
this.isDragging = true;
const clientX = e.touches ? e.touches[0].clientX : e.clientX;
const clientY = e.touches ? e.touches[0].clientY : e.clientY;
this.dragStartX = clientX;
this.dragStartY = clientY;
this.startPanX = this.panX;
this.startPanY = this.panY;
},
onDrag(e) {
if (!this.isDragging || this.zoomLevel <= 1) return;
const clientX = e.touches ? e.touches[0].clientX : e.clientX;
const clientY = e.touches ? e.touches[0].clientY : e.clientY;
this.panX = this.startPanX + (clientX - this.dragStartX);
this.panY = this.startPanY + (clientY - this.dragStartY);
},
stopDrag() {
this.isDragging = false;
},
toggleZoom() {
if (this.zoomLevel > 1) {
this.zoomLevel = 1;
this.resetPan();
} else {
this.zoomLevel = 1.5;
}
},
nextImg() { this.zoomLevel = 1; this.resetPan(); this.lightboxIndex = (this.lightboxIndex + 1) % this.validImages.length; },
prevImg() { this.zoomLevel = 1; this.resetPan(); this.lightboxIndex = (this.lightboxIndex - 1 + this.validImages.length) % this.validImages.length; }
}">
= 0 ? validImages.indexOf(activeImg) : 0)">
/
Bagikan:
{ window.open('https://www.instagram.com/', '_blank', 'noopener,noreferrer'); window.toast.show('Tautan disalin — tempel di Instagram', 'success') })"
class="flex items-center gap-3 px-3 py-2.5 rounded-xl text-sm font-medium text-brand-700 hover:bg-brand-50 transition-colors">
Instagram
X (Twitter)
WhatsApp
Facebook
Water wiper lantai stainless
0.0
★
|
0 Penilaian
|
0 Terjual
Rp 113.000
KategoriWiper Lantai
Stok
SKU-
Ukuran:
Jumlah
Deskripsi Produk
Floor squeegee berkualitas dengan bilah karet yang lentur dan kuat untuk membantu membersihkan genangan air, sabun, maupun cairan lainnya secara cepat dan efisien. Dilengkapi gagang panjang berbahan stainless steel yang kokoh sehingga nyaman digunakan tanpa perlu membungkuk. Sangat cocok untuk kebutuhan rumah tangga maupun penggunaan komersial.
Keunggulan Produk
- Bilah karet berkualitas yang fleksibel dan tahan lama.
- Efektif menghapus air, cairan, dan kotoran dari permukaan lantai.
- Tidak meninggalkan bekas air sehingga lantai lebih cepat kering.
- Gagang stainless steel kuat, ringan, dan antikarat.
- Nyaman digunakan untuk area yang luas.
- Mudah dibersihkan dan disimpan setelah digunakan.
Spesifikasi
Jenis: Floor Squeegee / Penghapus Air Lantai
Material gagang: Stainless steel
Material kepala: Plastik ABS + karet TPR berkualitas
Warna: Merah dan silver
Penggunaan: Lantai keramik, granit, marmer, semen, epoxy, vinyl, kamar mandi, dapur, garasi, teras, gudang, dan area komersial.
Cocok Digunakan Untuk
- Mengeringkan lantai setelah dipel.
- Membersihkan genangan air di kamar mandi.
- Mendorong air di teras, garasi, atau halaman.
- Membersihkan area dapur, restoran, hotel, rumah sakit, gudang, dan pabrik.
Floor squeegee ini merupakan solusi praktis untuk menjaga lantai tetap bersih, kering, dan aman. Dengan bilah karet yang rapat pada permukaan lantai, proses pembersihan menjadi lebih cepat, hemat tenaga, dan memberikan hasil yang maksimal
Spesifikasi
| Kategori | Wiper Lantai |
| SKU | - |
| Total Stok Yang Tersedia | 120 |
| Ukuran | 45 cm, 60 cm |
0.0
☆
☆
☆
☆
☆
0 Ulasan
5★
0
4★
0
3★
0
2★
0
1★
0
Belum ada ulasan
Jadilah yang pertama memberikan ulasan untuk produk ini.