Заставить левый столбец двигаться в соответствии с выбором? - PullRequest
0 голосов
/ 29 октября 2010

Я встретил плагин jQuery Wizard по следующему URI:

http://www.techlaboratory.net/labs/SmartWizard/wizard-vertical.htm

Хотя это служит моей цели, я пытаюсь достичь одной маленькой вещи. Если я добавлю более 5 шагов, очевидно, не все шаги видны. Вместо этого, нажимая на следующую, я пытаюсь центрировать выбранный шаг. Так, например, если я нажму на Шаг 2, поле слева, которое говорит, что Шаг 2 должно быть центрировано. Может кто-нибудь предложить хороший способ сделать это?

1 Ответ

1 голос
/ 30 октября 2010

Я сделал jsFiddle: http://jsfiddle.net/elektronikLexikon/xWmhh/
Работает с этим кодом:

$('.wiz-container').smartWizard();

var ul_height = 400; // default: 400
var link_height = 80; // default: 80

$("#wizard-anchor li a, .btn.next, .btn.back").click(function() {
    if($("#wizard-anchor li").length > 5) {
        var ul_top = $("#wizard-anchor").offset().top;
        var current_top = $(".wiz-anc-current").offset().top-ul_top;
        var first_top = $("#wizard-anchor li:first").offset().top;
        var last_top = $("#wizard-anchor li:last").offset().top;
        if((current_top > ul_height/2-link_height/2 && last_top > ul_height) || (current_top < ul_height/2+link_height/2 && first_top < 0)) {
            $("#wizard-anchor").animate({
                "margin-top": 160-current_top
            }, 700);
        }
    }
});

К сожалению, это просто работает, нажимая на кнопки, когда вы нажимаете на готовый шаг в левой колонке, происходят странные вещи.

...