JS czytaj więcej, nie rozwija się [shoper]

0

Dzień dobry,
postanowiłam tutaj napisać, ponieważ skorzystałem już chyba ze wszystkich sposobów w internecie.
Chcę wdrożyć opcję czytaj więcej w opisie na stronie. Platforma Shoper.

Najbliżej poprawnego działania jest ten kod:
http://jsfiddle.net/S3Rfu/20/

Jednak przycisk czytaj więcej się nie rozwija.

Byłbym wdzięczny za pomoc co jest nie tak. Jestem laikiem w tym temacie.

0

U mnie działa tak: https://kidsmax.pl/zabawki czyli wcale

0
Agnieszka Kwiatek napisał(a):

Dzień dobry,
postanowiłam tutaj napisać, ponieważ skorzystałem już chyba ze wszystkich sposobów w internecie.
Chcę wdrożyć opcję czytaj więcej w opisie na stronie. Platforma Shoper.

Najbliżej poprawnego działania jest ten kod:
http://jsfiddle.net/S3Rfu/20/

Jednak przycisk czytaj więcej się nie rozwija.

Byłbym wdzięczny za pomoc co jest nie tak. Jestem laikiem w tym temacie.

To literówka :)

0

Ogólnie masz tam błąd w konsoli - nie wykrywa Ci funkcji Live - TypeError: $(...).find(...).live is not a function, więc zobacz czy masz poprawnie dołączone jQuery - ja żadnego js'a z query w źródle strony nie widzę.

1

Myślałem, że w tym temacie chodzi o to, że JS nie rozwija się jako język programowania :)

0
axelbest napisał(a):

Ogólnie masz tam błąd w konsoli - nie wykrywa Ci funkcji Live - TypeError: $(...).find(...).live is not a function, więc zobacz czy masz poprawnie dołączone jQuery - ja żadnego js'a z query w źródle strony nie widzę.

dodaję taki kod head strony:

<script src="http://code.jquery.com/jquery-3.3.1.min.js" type="text/javascript"></script><script type="text/javascript">// <![CDATA[
var $j = jQuery.noConflict();
// ]]></script>

Bez efektu.

1

Ok, chyba mam rozwiązanie, stosujesz funkcję live która już od wersji 1.9 nie jest używana. Musisz zastąpić ją funkcją on - zobacz jak wygląda składnia i działanie i powinno działać. W jsFiddle który podesłałaś, możesz sprawdzić, ze jak zmienisz wersję jQuery na 3.3.1 to też nie zadziała.

Rzuć okiem tu - https://stackoverflow.com/questions/14354040/jquery-1-9-live-is-not-a-function

0
axelbest napisał(a):

Ok, chyba mam rozwiązanie, stosujesz funkcję live która już od wersji 1.9 nie jest używana. Musisz zastąpić ją funkcją on - zobacz jak wygląda składnia i działanie i powinno działać. W jsFiddle który podesłałaś, możesz sprawdzić, ze jak zmienisz wersję jQuery na 3.3.1 to też nie zadziała.

Rzuć okiem tu - https://stackoverflow.com/questions/14354040/jquery-1-9-live-is-not-a-function

Działa!

edit:
Ale treść nie chowa się po rozwinięciu. Już nie jest to takim problemem, ale czy jest na to sposób?

0

Proszę jeszcze o pomoc w tym, że treść nie chowa się po rozwinięciu. :/

1

A robisz to tak?

$(function(){
    $('.opis').each(function(){
        $(this).append('<div class="readmore">czytaj więcej...</div>');
        var textelement = $(this).find('.text');
        var wys = textelement.height();
        textelement.css('height', '80px');
        $(this).on('click','.readmore', function(){
            textelement.animate({height: wys}, 1000);
            $(this).attr('class', 'readless');
            $(this).text('czytaj mniej...');
        });
        $(this).on('click', '.readless', function(){
            textelement.animate({height: '80px'}, 1000);
            $(this).attr('class', 'readmore');
            $(this).text('czytaj więcej...');
        });
    });
});

To jest lekka modyfikacja tego co miałaś w jsFiddle'u. Ten kodzik, wrzucony na fiddle'a działa elegancko na jQuery 3.3.1.

zwróć uwagę na to jakie parametry lecą do funkcji on. To co było w find - trafiło jako parametr do on

0

Tak właśnie zrobiłam. Zadziałało. Dziękuję.

1 użytkowników online, w tym zalogowanych: 0, gości: 1