我的解決方案的現場演示:http://codebundles.com/listDemo.swf
你可以添加一個「檢查」選項盈用戶選擇,如果用戶再次點擊它刪除檢查,這樣一來,用戶可以取消選擇通過點擊該對象第二次..我曾經索引和列表上的數據,但這裏是一個快速的例子,運行相當順利!它看起來非常好!
list.addItemAt(0, "item 1", 0)
list.addItemAt(1, "item 2", 1)
list.addItemAt(2, "item 3", 2)
list.addItemAt(3, "item 4", 3)
list.addItemAt(4, "item 5", 4)
list.addItemAt(5, "item 6", 5)
_root.onMouseUp = function() {
selectedObject = (list.getSelectedItem().data)
tempString = (list.getSelectedItem().label)
withcheckString = "✓" + (list.getSelectedItem().label)
var stringArray:Array=tempString.split("✓");
withoutcheckString = stringArray.join("");
trace(tempString.indexOf("✓"))
if (tempString.indexOf("✓") == -1) {
list.replaceItemAt(selectedObject, withcheckString, selectedObject);
} else if (tempString.indexOf("✓") == 0) {
list.replaceItemAt(selectedObject, withoutcheckString, selectedObject);
}
}
*一個錯誤,我可以看到未來的是,如果你有一個像我在現場演示滾動條...點擊移動,這將導致被稱爲「mouseUp事件」事件和刪除/添加一個檢查你最後選擇的列表項目..所以你可能想要檢測用戶的_ymouse & _xmouse位置實際上是在運行我的「✓」替換代碼之前列表中。不應該很難;)
*也,ctrl +點擊可能不工作了,但你仍然可以添加代碼來修復,以及...
這同樣的代碼將適用於HTML ..但我敢肯定,有更好的JavaScript的東西,你可以做的HTML升ists像突出顯示的領域,而不是檢查infront它..甚至在AS2甚至可以突出你選擇的領域......
也有一種方法來做到這一點與HTML列表?我有2個地方,用戶將從列表中選擇項目 - 在Flash和HTML頁面上。我希望能夠在這兩個地方複製這個功能。 – undefined