Πρόβλημα mobile menu σε συσκευές Apple με iOs 13


 

Η δημοσίευση αυτή αναφέρεται σε ένα πρόβλημα που παρουσιάστηκε στο CS-Cart εδώ και μερικές ημέρες (18/10/2019).

Οι ιδιοκτήτες καταστήματος σε CS-Cart έκδοση 4.3.6 και άνω που έχουν iPhone και έκαναν αναβάθμιση στο iΟs13 πρόσφατα ίσως θα έχουν ήδη παρατηρήσει ένα πρόβλημα που έχει προκύψει με το μενού του CS-Cart σε κινητό.

Συγκεκριμένα είναι αδύνατον να πατήσει κανείς σε υποκατηγορία. Ουσιαστικά δεν είναι πλέον λινκ.

Αυτό δεν αποτελεί πρόβλημα του CS-Cart αφού σε οποιοδήποτε άλλο browser αλλά και άλλη κινητή συσκευή, λειτουργεί κανονικά.

Έχει να κάνει αποκλειστικά με την αναβάθμιση του Safari για το iΟs13 και την αλλαγή που έγινε σ αυτόν απο την Apple. Η συγκεκριμένη έκδοση έχει και άλλα πολλά προβλήματα, αλλά αυτή συγκεκριμνένη αλλαγή επηρεάζει τον τρόπο που διαβάζει javascript ο Safari, κατι που το CS-Cart κάνει χρήση για το mobile menu.

Η λύση έχει βρεθεί και δεν είναι δύσκολη στην εφαρμογή της, αλλά απαιτεί πρόσβαση στα αρχεία του CS-Cart με FTP για να αλλάξετε ενα συγκεκριμένο αρχείο.

 

Συγκεκριμένα

  1. Ανοίξτε σε ένα text editor το αρχείο public_html/js/tygh/responsive.js

  2. Αντικαταστήσετε το παρακάτω κομματι κώδικα

    // Detect menu collisions
                        if(menuItemElm) {
                            if(typeof menuItemElm.offset()  !== "undefined") {
                                menuWidth = menuWidth - (menuItemElm.offset().left - menuOffset.left)
                            }
                            submenu = $('.cm-responsive-menu-submenu', menuItemElm).first();
                           
                            if(submenu.length) {
                                submenu.css({visibility: "hidden", left: 0});
                                position = submenu.outerWidth();
                                if(position > menuWidth) {
                                    submenu.parent().addClass('ty-menu__submenu-to-right');
                                }
                                submenu.css({visibility: "", left: "auto"});
                            }

                        }
                    }
                },

                responsiveTables: function(e) {


    με αυτό

    // FIXEME: iOS 13 bug with visibility: hidden
                        // Detect menu collisions

                        if (menuItemElm) {
                        var submenu = $('.cm-responsive-menu-submenu', menuItemElm);
                        if (submenu.length) {
                        var position = submenu.position().left + submenu.width();
                        if (position > menuWidth) {
                            submenu.parent().addClass('ty-menu__submenu-to-right');
                                 }
                             }
     
                         }
                    }
                },

                responsiveTables: function(e) {

 

3) Καθαρίστε την cache του CS-Cart.

 

Όσοι το προσπαθήσουν πρέπει να δώσουν μεγάλη προσοχή στο τι θα κάνουν, να έχουν αντίγραφο τοπικά του αρχείου που θα αλλάξουν- πριν την αλλαγή-, ενώ αν δεν έχουν κάνει παρόμοια εργασία στο παρελθόν καλύτερα να το αποφύγουν.

Για όσους δεν μπορούν ή δε θέλουν να δοκιμάσουν να κάνουν την παραπάνω διόρθωση, είμαστε στη διάθεσή σας με ένα πολύ μικρό ποσό να το διορθώσουμε εμείς. Επισκεφτείτε τη σελίδα μας στο link :

https://www.cscart.biz/problem-solving.html


Συμπληρώστε :

  • Στο πεδιο τιμη: 20
  • Στο πεδιο Συντομη περιγραφη : " Διόρθωση Mobile menu για Safari"

και ολοκληρώστε την παραγγελία σας. Θα επικοινωνήσουμε μαζί σας για τις λεπτομέρειες.

To παραπάνω θέμα που δημούργησε η αναβάθμιση του iphone είναι (ή ηταν τουλάχιστον) ορατό ακόμη και στο demo της CS-Cart στην πιο τελευταία έκδοση του https://demo.cs-cart.com

Πιστεύουμε ότι στην διορθωτική έκδοση που θα βγει τις επομένες ημέρες απο την Apple για το iOs13 θα διορθωθεί το πρόβλημα, αλλά επειδή κανείς δε ξέρει σίγουρα, καλά είναι να προχωρήσετε άμεσα στη διόρθωση.