简体   繁体   English

jQuery可排序的静态内容

[英]jQuery Sortable with static content

I writing a website by using Bootstrap and jQuery. 我使用Bootstrap和jQuery编写网站。 Now, i have a horizontal list of div at the bottom of webpage. 现在,我在网页底部有一个水平的div列表。 It's act like the Slide bar in Microsoft Powerpoint. 就像Microsoft Powerpoint中的滑动条一样。 The number is unchange element. 该数字是不变元素。 If i got 6 record from server, it will generate 6 slide in the list. 如果我从服务器获得6条记录,它将在列表中生成6张幻灯片。 User can drag the "DIV" box and move to another position. 用户可以拖动“ DIV”框并移动到另一个位置。 Just like the normal flow of Sortable plugin. 就像Sortable插件的正常流程一样。 在此处输入图片说明

Expected result: 预期结果: 在此处输入图片说明 I tried two way to code this "slide bar". 我尝试了两种方式来编码此“滑动条”。 However, i cannot build the expected result. 但是,我无法建立预期的结果。

Concept 1: Split two row to perform. 概念1:拆分两行执行。 but will have two scrollable. 但将有两个可滚动的。

 <div class="row"> <div class="col-md-12"> <div class="row"> <div class="col-md-12"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> </div> </div> <div class="row"> <div class="col-md-12 sortable-list"> <div class="box"></div> <div class="box"></div> <div class="box"></div> <div class="box"></div> <div class="box"></div> <div class="box"></div> </div> </div> </div> </div> 

Concept 2: use "items". 概念2:使用“项目”。 However, it will exist some weird issue when can drag the box. 但是,拖动框时将存在一些奇怪的问题。 slideNumber div will move to wrong position and box will disappear slideNumber div将移至错误位置,且框将消失

 $("sortable-list").sortable({ items:'.box' }); 
 .slideNumber{ position: absolute; top:0px; left:15px; } .box{ position: absolute; top:30px; left:0; } /**roughly css**/ 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"> </script> <div class="row"> <div class="col-md-12"> <div class="row"> <div class="col-md-12 sortable-list"> <div> <div class="slideNumber">1</div> <div class="box"></div> </div> <div> <div class="slideNumber">2</div> <div class="box"></div> </div> <div> <div class="slideNumber">3</div> <div class="box"></div> </div> <div> <div class="slideNumber">4</div> <div class="box"></div> </div> <div> <div class="slideNumber">5</div> <div class="box"></div> </div> <div> <div class="slideNumber">6</div> <div class="box"></div> </div> </div> </div> </div> </div> 

Anyone can give me a hint to build this slide bar? 任何人都可以提示我构建此滑动条吗?

This should work: 这应该工作:

 $( function() { $(".sortable-list") .sortable() .disableSelection(); } ); 
 .container > div { padding:0 30px 0px 30px; display:inline-block; } .sortable-list > div { margin:1px; display:inline-block; padding:30px; background:#777; border:1px solid black; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/themes/smoothness/jquery-ui.css"><script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <div class="row"> <div class="col-md-12"> <div class="row"> <div class="col-md-12 container"> <div>1</div> <div>2</div> <div>3</div> <div>4</div> <div>5</div> <div>6</div> </div> </div> <div class="row"> <div class="col-md-12 sortable-list"> <div>&nbsp;</div> <div>&nbsp;</div> <div>&nbsp;</div> <div>&nbsp;</div> <div>&nbsp;</div> <div>&nbsp;</div> </div> </div> </div> </div> 

 .row { width:100%; } .col-md-12,.slideNumber { width:100%; display:flex; margin-right:50px; } .box { width:50px; height:50px; background:gray; text-align:center; line-height: 50px; vertical-align: middle; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"> </script> <div class="row"> <div class="col-md-12"> <div class="row"> <div class="col-md-12 sortable-list"> <div> <div class="slideNumber">1</div> <div class="box">Div</div> </div> <div> <div class="slideNumber">2</div> <div class="box">Div</div> </div> <div> <div class="slideNumber">3</div> <div class="box">Div</div> </div> <div> <div class="slideNumber">4</div> <div class="box">Div</div> </div> <div> <div class="slideNumber">5</div> <div class="box">Div</div> </div> <div> <div class="slideNumber">6</div> <div class="box">Div</div> </div> </div> </div> </div> </div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM