Zoom berfungsi dengan baik,
Tetapi ketika melayang pada menu drop-down kategori ke area tumpang tindih gambar produk dan menu drop-down, Zoom berfungsi normal, bahkan mouse masih pada menu drop-down.
Silakan periksa gambar yang diambil:
Zoom berfungsi dengan baik,
Tetapi ketika melayang pada menu drop-down kategori ke area tumpang tindih gambar produk dan menu drop-down, Zoom berfungsi normal, bahkan mouse masih pada menu drop-down.
Silakan periksa gambar yang diambil:
Jawaban:
Anda perlu mengganti kode lib / web / magnifier / magnifier.js dalam tema Anda seperti di bawah ini.
$(document).on('mousemove', onMousemove);
_init($box, gOptions);
Ganti dengan.
$box.on('mousemove', onMousemove);
$box.on('mouseleave', mouseleave);
function mouseleave(e) {
onThumbLeave();
isOverThumb = false;
$largeWrapper.addClass(MagnifyCls.magnifyHidden);
}
_init($box, gOptions);
Kita perlu menambahkan fungsi pada acara "mouseleave" dari blok gambar jika tidak zoom akan ditampilkan setelah mouse pergi dari blok gambar.
Silakan tambahkan kode di atas dan beri tahu saya jika Anda membutuhkan yang lain.
Untuk magento versi 2.2.6 ganti kode di bawah ini dalam tema Anda. Jalur file lib / web / magnifier / magnifier.js Ganti dalam aplikasi / desain / antarmuka / vendor / modul / web
$box.on('mousemove', onMousemove);
_init($box, customUserOptions);
Ganti dengan.
$box.on('mousemove', onMousemove);
$box.on('mouseleave', mouseleave);
function mouseleave(e) {
onThumbLeave();
isOverThumb = false;
$magnifierPreview.addClass(MagnifyCls.magnifyHidden);
}
_init($box, customUserOptions);
Saya memutakhirkan ke v2.2.6 dan tidak berfungsi lagi setelah itu
saya mengedit kode seperti ini dan berfungsi:
$box.on('mousemove', onMousemove);
$box.on('mouseleave', mouseleave);
function mouseleave(e) {
onThumbLeave();
isOverThumb = false;
$(largeWrapper).addClass(MagnifyCls.magnifyHidden);
}
// _init($box, gOptions);
_init($box, customUserOptions);
Sepertinya ini adalah bug Magetno.
Periksa Di Sini .
Perbaikan telah digabungkan dengan Lattest Magetno 2.2.4 .
Jika Anda menjalankan versi yang lebih lama daripada Anda dapat memodifikasi file di bawah ini sebagai workarround.
lib / web / magnifier / magnifier.js
$box.on('mousemove', onMousemove);
_init($box, gOptions);
Referensi: - Periksa Komit ini yang digabung dengan Magento 2.2.4
Update
: - Jika Anda menggabungkan PR ini dan daripada itu akan menjadi masalah zoom untuk Anda. Sepertinya tidak berfungsi, Memperbaiki satu Masalah yang dikacaukan dengan yang lain. Lakukan dengan risiko Anda sendiri !!!
Dengan versi terbaru, solusi di atas masih tidak berfungsi, saya harus menentukan kelas pratinjau kaca pembesar khusus seperti ini:
$box.on('mousemove', onMousemove);
$box.on('mouseleave', mouseleave);
function mouseleave(e) {
onThumbLeave();
isOverThumb = false;
$('.magnifier-preview').addClass(MagnifyCls.magnifyHidden);
}
_init($box, customUserOptions);
Di mana Anda dapat menemukan magnifier.js originel? Kami memiliki masalah ini dan menggunakan tema Ultimo. Namun aplikasi / desain / antarmuka / Infortis / ultimo adalah seberapa jauh kita dapatkan. Lalu tentu saja saya bisa membuat web / kaca pembesar / folder tetapi dari mana mendapatkan kaca pembesar yang tepat.
Adakah yang bisa menjadi contoh? Terima kasih