القائمة
/
0 ? -0.25 : 0.25;
const oldScale = zoomScale;
zoomScale = Math.max(1, Math.min(zoomMaxScale, zoomScale + delta));
if (oldScale === 1 && zoomScale > 1) {
const r = $el.getBoundingClientRect();
const cx = $event.clientX - (r.left + r.width/2);
const cy = $event.clientY - (r.top + r.height/2);
zoomPanX = -cx * (zoomScale-1)/zoomScale;
zoomPanY = -cy * (zoomScale-1)/zoomScale;
} else if (zoomScale > 1) {
zoomPanX = zoomPanX * (zoomScale / oldScale);
zoomPanY = zoomPanY * (zoomScale / oldScale);
}
if (zoomScale <= 1) { resetZoom(); } else { clampPan(); }
"
class="relative w-full h-full flex items-center justify-center p-4 [touch-action:none]"
:class="zoomScale > 1 ? (zoomPanning ? 'cursor-grabbing' : 'cursor-grab') : (modalTotal > 1 ? (modalDragging ? 'cursor-grabbing' : 'cursor-grab') : '')"
@mousedown="modalDragStart($event)"
@mousemove="modalDragMove($event)"
@mouseup="modalDragEnd($event)"
@mouseleave="modalDragEnd($event)"
@touchstart="modalDragStart($event)"
@touchmove="modalDragMove($event)"
@touchend="modalDragEnd($event)"
:style="modalDragOffset ? `transform: translateX(${modalDragOffset}px); transition: none;` : 'transition: transform 0.2s ease-out;'">
measureZoomCeiling($el))"
@click.stop
@dblclick.stop.prevent="if (lastInputWasTouch) return; zoomAnimating = true; if (zoomScale > 1) { resetZoom(); } else { const r = $el.getBoundingClientRect(); const cx = $event.clientX - (r.left + r.width/2); const cy = $event.clientY - (r.top + r.height/2); zoomScale = Math.min(2.5, zoomMaxScale); zoomPanX = -cx * (zoomScale-1)/zoomScale; zoomPanY = -cy * (zoomScale-1)/zoomScale; clampPan(); } setTimeout(() => { zoomAnimating = false; }, 300);"
draggable="false"
:style="modalActive === largeIdx
? 'position:relative;transform: scale(' + zoomScale + ') translate(' + (zoomPanX / zoomScale) + 'px, ' + (zoomPanY / zoomScale) + 'px); transform-origin: center center; will-change: transform; transition: ' + (zoomAnimating ? 'transform 0.3s ease-out' : (zoomScale > 1 ? 'none' : 'transform 0.2s ease-out')) + ';'
: ''" />
مجفف ومصفف الشعر
فرشاة كهربائية تجمع بين التجفيف والتصفيف بخطوة واحدة، تفك التشابك وتمنح الشعر لمعانًا أكثر بنسبة 22%، بدون الحاجة لأدوات إضافية.

وداعًا لخطوات التصفيف الطويلة والمعقدة! فرشاة التجفيف والتصفيف الحرارية تجمع بين مجفف الشعر والفرشاة الدوارة بجهاز واحد، تخليكِ تجففي وتصففي شعرك بخطوة واحدة بس، بنتيجة احترافية من أول استخدام.
مميزات المنتج:
- تجفيف وتصفيف الشعر بخطوة واحدة، توفير للوقت والجهد
- تفك تشابك الشعر بسهولة أثناء التصفيف
- تمنح الشعر لمعانًا أكثر بنسبة 22%
- تصميم فرشاة دوارة يعطي حجم وكثافة طبيعية للشعر
- مقبض مريح وخفيف الوزن لسهولة الاستخدام
- مناسبة لجميع أنواع وأطوال الشعر
النتيجة اللي كنتِ توديها لصالون التصفيف، هلأ تقدري تسويها ببيتك بأقل وقت وجهد.
| التصنيف | العناية الشخصية و الجمال |
|---|---|
| رمز المنتج | MD_0268 |
JD 9