Преобразование текста прокрутки кода JavaScript в JQuery - PullRequest
0 голосов
/ 13 февраля 2012

Я ищу Jquery-версию этого кода:

var tweet = document.getElementById('tweet');
tweet.id = 'tweet_js';
tweet.className = 'hiding';

var slide_timer,
max = tweet.scrollWidth,
slide = function () {
    tweet.scrollLeft += 1;
    if (tweet.scrollLeft < max) {
        slide_timer = setTimeout(slide, 40);
    }
};

tweet.onmouseover = tweet.onmouseout = function (e) {
e = e || window.event;
e = e.type === 'mouseover';
clearTimeout(slide_timer);
tweet.className = e ? '' : 'hiding';
if (e) {
    slide();
} else {
    tweet.scrollLeft = 0;
}
};

этот код был размещен здесь: http://jsfiddle.net/sdleihssirhc/AYYQe/3/ как ответ на этот вопрос: CSS / JQuery с боковой прокруткой текста при наведении курсора

Ответы [ 2 ]

2 голосов
/ 13 февраля 2012

Я бы посоветовал вам написать;) Или у вас есть проблемы с этим?И почему вы хотите использовать jquery для этого, если ваш код уже работает?Вы не получаете никаких преимуществ в производительности или подобных вещах.

0 голосов
/ 13 февраля 2012

Я бы использовал код как есть, если бы работал нормально. Потому что в этом коде нет увеличения производительности или строк.

Если вы хотите увидеть его версию jQuery, вот вам.

var $tweet = $('#tweet');
$tweet.attr({
    id: 'tweet_js',
    class: 'hiding'
});

var slide_timer,
max = $tweet.outerWidth(),
var slide = function () {
    $tweet.scrollLeft($tweet.scrollLeft() + 1);
    if ($tweet.scrollLeft() < max) {
        slide_timer = setTimeout(slide, 40);
    }
};

$tweet.bind('mouseover mouseout', function (e) {
    var isMouseOver = e.type === 'mouseover';
    clearTimeout(slide_timer);
    tweet.toggleClass('hiding', !isMouseOver);
    if (isMouseOver) {
        slide();
    } else {
        $tweet.scrollLeft(0);
    }
});
...