假設我的總寬度爲585px。我想將空間分成相等的部分,並將每個索引值分配給位置。我可以做這樣的事情,如果我可以說6個部分:(由段總寬度/數分配)根據當前部分分配索引號
//Set up elements with variables
this.sliderContent = config.sliderContent;
this.sectionsWrap = config.sectionsWrap;
//Selects <a>
this.sectionsLinks = this.sectionsWrap.children().children();
//Create drag handle
this.sectionsWrap.parent().append($(document.createElement("div")).addClass("handle-containment")
.append($(document.createElement("a")).addClass("handle ui-corner-all").text("DRAG")));
//Select handle
this.sliderHandle = $(".handle");
var left = ui.position.left,
position = [];
var position = ((left >= 0 && left <= 80) ? [0, 1] :
((left >= 81 && left <= 198) ? [117, 2] :
((left >= 199 && left <= 315) ? [234, 3] :
((left >= 316 && left <= 430) ? [351, 4] :
((left >= 431 && left <= 548) ? [468, 5] :
((left >= 549) ? [585, 6] : []))))));
if (position.length) {
$(".handle").animate({
left : position[0]
}, 400);
Slider.contentTransitions(position);
}
但是,如果我有部分的x號是什麼。這些部分就像
<li><a></a></li>
<li><a></a></li>
<li><a></a></li>
或者
元素<div><a></a></div>
<div><a></a></div>
<div><a></a></div>
<div><a></a></div>
我將如何劃分共有585px並根據.handle
元素的當前值左側位置索引分類?我可以通過使用ui.position.left
知道拖拽柄的位置,我想要的是能夠爲每個元素設置索引,並且能夠根據索引元素內的句柄位置來設置動畫句柄。由於每個元素都被編入索引,所以我稍後調用一個轉換方法並傳入當前索引#以顯示。我上面顯示的代碼有效,但效率不高。我還需要考慮手柄的寬度以適合切片寬度。 http://jsfiddle.net/yfqhV/1/
你怎麼在0 /199分之81/位置到達。 ..檢查左邊是哪裏? – Raad 2013-03-05 17:21:58
@Raad第一個是這樣,手柄會排隊,199是81 + 117 + 1px邊框;其他人全部117被添加到前一個左側。 – 2013-03-06 01:27:11