Jquery mobile 使用scrollview将div捕捉到屏幕中间

Jquery mobile 使用scrollview将div捕捉到屏幕中间,jquery-mobile,scrollview,carousel,Jquery Mobile,Scrollview,Carousel,也许在一个漫长的周末的星期五没有人能回答这个问题 使用jquery mobile beta版和jquery mobile 插件。 scrtollview插件重新绘制了5个div,它们以旋转木马的方式成功绘制,5个div并排 <div class="scrollme" data-scroll="x"> <div class="indDiv"> one </div>

也许在一个漫长的周末的星期五没有人能回答这个问题

使用jquery mobile beta版和jquery mobile 插件。 scrtollview插件重新绘制了5个div,它们以旋转木马的方式成功绘制,5个div并排

           <div class="scrollme" data-scroll="x">
              <div class="indDiv"> one
                </div>
              <div  class="indDiv"> two
                </div>
              <div class="indDiv"> three
                </div>
              <div class="indDiv"> four
                </div>
              <div class="indDiv"> five
                </div>                              
            </div>


$('div.indDiv').bind('tap', function(e){
  var clickedDiv = $(this);
  // snap clickedDiv to the middle of the page
});

一
二
三
四
五
$('div.indDiv').bind('tap',函数(e){
var clickedDiv=$(此项);
//将鼠标右键单击到页面中间
});
我有这样一个要求,当我点击旋转木马内的一个div时,我想通过编程移动旋转木马,以便点击的div被捕捉到屏幕的中间。我看不出有什么办法可以使用scrollview插件方法。。。我也可以灵活地切换到其他插件。。。 有人吗


多谢了,这涉及到在文档正文的末尾添加一些内容,因为位置:相对/绝对问题

我已经写了一个简单的插件,允许居中和着色。。。这可能不是产品质量问题,但我对此感到满意已经有一段时间了

(function($) {
    $.fn.center = function() {
        this.css("position", "absolute");
        this.css("top", (($(window).height() * .4) - this.height()) / 2
                + $(window).scrollTop() + "px");
        this.css("left", ($(window).width() - this.width()) / 2
                + $(window).scrollLeft() + "px");
        return this;
    }

    var shade = 0;
    $.fn.unshade = function() {
        $('.shade:last').remove();
        var $children = $('.shade-front:last').children();
        $children.each(function(k, v) {
            if ($.data(v, 'shade-replace-previous').size() != 0) {
                $.data(v, 'shade-replace-previous').append(v);
            } else {
                $.data(v, 'shade-replace-parent').prepend(v);
            }
        });
        $('.shade-front:last').remove();
        return $children;
    }

    $.fn.shade = function(css) {
        var $shade = $('<div class="shade"/>');
        $shade.css( {
            position : "absolute",
            width : '100%',
            height : '100%',
            top : 0,
            left : 0,
            background : "#000",
            opacity : .7
        })
        $shade.click(function() {
            $(this).unshade();
        })
        $('body').append($shade);

        // Record our element's last position
        this.each(function(k, v) {
            var $this = $(v);
            var prev = $this.prev();
            var par = $this.parent();
            $.data(v, 'shade-replace-previous', prev);
            $.data(v, 'shade-replace-parent', par);
        });

        // Add them to the shadefront
        var $shade_front = $('<div class="shade-front"/>');
        $shade_front.css("background", "#FFF");
        $shade_front.css("margin", "auto");
        $shade_front.css("text-align", "center");
        if (css) {
            $shade_front.css(css);
        }
        $shade_front.append(this);
        $shade_front.center();
        $('body').append($shade_front);
        return $shade_front;
    }

})(jQuery);
(函数($){
$.fn.center=函数(){
css(“位置”、“绝对”);
this.css(“top”($(window.height()*.4)-this.height())/2
+$(窗口).scrollTop()+“px”);
this.css(“left”,($(window.width()-this.width())/2
+$(窗口).scrollLeft()+“px”);
归还这个;
}
var-shade=0;
$.fn.unshade=函数(){
$('.shade:last').remove();
var$children=$('.shade-front:last').children();
$children.每个(函数(k,v){
如果($.data(v,'shade replace previous').size()!=0){
$.data(v,'阴影替换以前的')。追加(v);
}否则{
$.data(v,“阴影替换父项”).prepend(v);
}
});
$('.shade front:last')。删除();
返回$children;
}
$.fn.shade=函数(css){
变量$shade=$('');
$shade.css({
位置:“绝对”,
宽度:“100%”,
高度:“100%”,
排名:0,
左:0,,
背景:“000”,
不透明度:.7
})
$shade.单击(函数(){
$(this.unshade();
})
$('body')。追加($shade);
//记录我们元素的最后位置
这是每个函数(k,v){
变量$this=$(v);
var prev=$this.prev();
VaR PAR= $ $.PARTY();
$.数据(v,‘阴影替换以前的’,上一个);
$.数据(v,‘阴影替换父项’,par);
});
//将它们添加到shadefront
变量$shade_front=$('');
$shade_front.css(“背景”,“FFF”);
$shade_front.css(“边距”、“自动”);
$shade_front.css(“文本对齐”、“居中”);
如果(css){
$shade_front.css(css);
}
$shade_front.附加(此);
$shade_front.center();
$('body')。追加($shade\u front);
返回$shade_front;
}
})(jQuery);

我正在使用这个插件,然后将SwiperRight/left绑定到next/prev按钮


谢谢你的回答。但这不起作用:(Scrollview插件呈现div并将父div添加到div.scrollme,并添加一个“ui Scrollview视图”类。然后在“-moz transform”、“-webkit transform”和“transform”中添加了“translate3d”(“+x+”、“+0+”、0px)”值“css属性…如果我移动旋转木马,这就是本质上被操纵的属性…我想更改上述属性,但通过javascript执行操作没有任何效果…$elem.css({“-moz transform”:v,“-webkit transform”:v,“transform”:v}”)哦,孩子。所以你不是在做简单的页面定位。如果你在做3d css转换,那么我帮不了你=)