Показать сообщение отдельно
  #5 (permalink)  
Старый 14.01.2016, 15:57
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,072

sti111, строка 207
function WowSlider(options) {
    var $ = jQuery;
    options = options || {};
    var $Elements = $("#wowslider-images A");
    $Elements.each(function(index) {
        var inner = $(this).html() || "";
        var pos = inner.indexOf(">", inner);
        if (pos >= 0) {
            $(this).da ta("descr", inner.substr(pos + 1));
            if (pos < inner.lengt h - 1) {
                $(this).html(inner.substr(0, pos + 1));
            }
        }
        $(this).c ss({
            'font-size': 0
        });
    });
    var elementsCount = $Elements.length;
    var $ws_container = $("#wowslider-container");
    var frame = $("A#wowslider-frame").get(0);
    var curIdx = 0;

    function go(index) {
        if (curIdx == index) {
            return;
        }
        var current = effect.go(index);
        if (!current) {
            return;
        }
        if (t ypeof current != "object") {
            current = $Elements[index];
        }
        curIdx = index;
        go2(index);
        if (options.caption) {
            setT itle(current);
        }
    }

    function go2(index) {
        if (options.bullets) {
            setBullet(index);
        }
        i f(frame) {
            frame.setAttribute("href", $Elements.get(i ndex).href);
        }
    }
    var autoPlayTimer;

    function restartPlay() {
        stopPlay();
        if (options.autoPlay) {
            auto PlayTimer = setTimeout(function() {
                go(curIdx < elements Count - 1 ? curIdx + 1 : 0);
                restartPlay();
            }, options.delay + option s.duration);
        }
    }

    function stopPlay() {
        if (autoPlayTimer) {
            clearTimeout(autoPlay Timer);
        }
        autoPlayTimer = null;
    }
    $Elements.find("IMG").css("position", "absolute");
    var effect = new window["ws_" + options.effect](options);
    effect.init($("#wowslider-images"));
    $Elements.find("IMG").css("visibility", " visible");
    var ic = c = $("#wowslider-images");
    var t = "";
    c = t ? $("<div></div>") : 0;
    if (c) {
        c.css({
            position: "absolute",
            right: "2 px",
            bottom: "2px",
            padding: "0 0 0 0"
        });
        ic.append(c);
    }
    if (c && document.all) {
        var f = $("<iframe src=\"javascript:false\"></iframe>");
        f.css({
            position: "absolute",
            left: 0,
            top: 0,
            width: "100%",
            height: "100%",
            filter: "alpha(opacity=0 )"
        });
        f.attr({
            scrolling: "no",
            framespacing: 0,
            border: 0,
            frameBorder: "no"
        });
        c.append(f);
    }
    var d = c ? $(document.createElement("A")) : c;
    if (d) {
        d.css({
            position: "relative",
            display: "block",
            'background-color': "#E4EFEB",
            color: "#837F80",
            'font-family': "Lucida Grande,sans-serif",
            'font-size': "11px",
            'font-weight': "normal",
            'font-style': "normal",
            '-moz-border-radius': "5px",
            'border-radius': "5px",
            padding: "1px 5px",
            width: "auto",
            height: "auto",
            margin: "0 0 0 0",
            outline: "none"
        });
        d.attr({
            href: "ht" + "tp://" + t.toLowerCase()
        });
        d.html(t);
        d.bind("contextmenu", function(eventObject) {
            return false;
        });
        c.append(d);
    }
    if (options.controls) {
        var $next_photo = $("<a href=\"#\" class=\"ws_next\">" + options.next + "</a>");
        var $prev_photo = $("<a href=\"#\" class=\"ws_prev\">" + options.prev + "</a>");
        $ws_container.append($next_photo);
        $ws_contain er.append($prev_photo);
        $next_photo.bind("click", fu nction(e) {
            stopPlay();
            e.preventDefault();
            go(curIdx < elementsCount - 1 ? curIdx + 1 : 0);
            restartPlay();
        });
        $prev_photo.bind("c lick", function(e) {
            stopPlay();
            e.preventDefault();
            go(curIdx > 0 ? curIdx - 1 : elementsCount - 1);
            restartPlay();
        });
    }

    function initBullets() {
        $bullets = $(".ws_bullets a", $ws_container);
        $bullets.each(function(index) {
            $(this).bind("click", function(e) {
                stopPlay();
                e.preven tDefault();
                go(index);
                restartPlay();
            });
        });
    }

    function setBullet(new_index) {
        $(".ws_bullets A", $ws_container).each(function(index) {
            if (index == n ew_index) {
                $(this).addClass("ws_selbull");
            } else {
                $(t his).removeClass("ws_selbull");
            }
        });
    }
    if (options.cap tion) {
        $caption = $("<div class='ws-title' style='display:none'></div>");
        $ws_container.append($caption);
        $caption.bin d("mouseover", function(e) {
            stopPlay();
        });
        $caption.b ind("mouseout", function(e) {
            restartPlay();
        });
    }
    funct ion setTitle(A) {
        var title = $("img", A).attr("title");
        var descr = $(A).data("descr");
        var $Title = $(".ws-title", $ws_container);
        $Title.hide();
        if (title || desc r) {
            $Title.html((title ? "<span>" + title + "</span>" : "") + (descr ? "<div>" + descr + "</div>" : ""));
            $Title.fadeIn(400, function() {
                if ($.brows er.msie) {
                    $(this).get(0).style.removeAttribute("fil ter");
                }
            });
        }
    }
    if (options.bullets) {
        initBullets();
    }
    go2(0);
    if (options.caption) {
        setTitle($Elements[0]);
    }
    restartPlay();
}
var wowSlider = new WowSlider({
    effect: "fade",
    prev: "",
    next: "",
    duration: 10 * 100,
    delay: 20 * 100,
    outWidth: 604,
    outHeight: 403,
    wid th: 604,
    height: 403,
    caption: true,
    controls: true,
    autoP lay: true,
    bullets: true
});
Ответить с цитированием