Использование Pixastic и .live с классом изображений - PullRequest
2 голосов
/ 11 августа 2011

Я использую плагин Pixastic в JavaScript.У меня есть таблица, заполненная размытыми изображениями.Когда я обхожу их мышью, я хочу, чтобы они стали нормальными.И когда мышь оставляет изображение, я хочу, чтобы оно размылось.По какой-то причине мой код не работает.Вот код:

Ранее я скопировал неверную часть кода и извиняюсь за то, что я спрашиваю об этом.

<script type="text/javascript">
    $(document).ready(function(){
        $('.photography').live('mouseover mouseout', function(event) {
            if (event.type == 'mouseover') {
                function () {Pixastic.revert('this');};
            }
            else {
                function(){Pixastic.process('this', "blurfast", {amount:0.5});};
            }
        });
    });
</script>

ОК, так что мне удалосьнайдите мой старый код, который на самом деле работает наполовину (когда я нахожу курсор над изображением в первый раз, он работает, но когда я пытаюсь во второй раз, он не работает).Я также добавляю код для функции под названием revert:

revert : function(img) {
    if (Pixastic.Client.hasCanvas()) {
        if (img.tagName.toLowerCase() == "canvas" && img.__pixastic_org_image) {
            img.width = img.__pixastic_org_width;
            img.height = img.__pixastic_org_height;
            img.getContext("2d").drawImage(img.__pixastic_org_image, 0, 0);

            if (img.parentNode && img.parentNode.replaceChild) {
                img.parentNode.replaceChild(img.__pixastic_org_image, img);;
            }
            return img;
        }
    }
    else
        if (Pixastic.Client.isIE()) {
            if (typeof img.__pixastic_org_style != "undefined")
                img.style.cssText = img.__pixastic_org_style;
            }
        }

Ответы [ 2 ]

3 голосов
/ 13 августа 2011

Итак, вчера моя подруга обнаружила, как это можно сделать ... проблема заключалась в том, что плагин в любом случае преобразует изображения в canvas:

0 голосов
/ 11 августа 2011

Попробуйте сделать это

$('.photography').live('mouseenter', function(event){
    Pixastic.revert(this);
}).live('mouseleave', function(event){
    Pixastic.process(this, "blurfast", {amount:0.5});
});
...