我有这样的事情:
<div class="list-group list">
<a href="blabld" id="2" data-order="1">World</a>
<a href="blabla" id="1" data-order="2">Hello</a>
</div>
不,我尝试使用普通的Javascript动态更改链接的顺序。
有没有人有任何建议,怎么办?
我的目标是:
var kaki: Bool!
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
if kaki == nil{
print("kaki is nil")
kaki = false
NSUserDefaults.standardUserDefaults().setObject(kaki, forKey: "kaki")
NSUserDefaults.standardUserDefaults().synchronize()
print("kaki now has value")
}else{
print("kaki already has value")
kaki = NSUserDefaults.standardUserDefaults().objectForKey("kaki") as! Bool
}
func applicationWillResignActive(application: UIApplication) {
NSUserDefaults.standardUserDefaults().setObject(kaki, forKey: "kaki")
NSUserDefaults.standardUserDefaults().synchronize()
}
答案 0 :(得分:1)
你走了:
function sort(r) {
var $list = document.getElementsByClassName('list')[0];
var listGroupA = document.getElementsByTagName('a');
var $listGroupA = [];
for (var i = 0; i < listGroupA.length; ++i) {
$listGroupA.push(listGroupA[i]);
}
$listGroupA.sort(function (a, b) {
return r * (a.getAttribute('data-order') - b.getAttribute('data-order'));
});
for (var i = 0; i < $listGroupA.length; i++) {
$list.removeChild($listGroupA[i]);
}
for (var i = 0; i < $listGroupA.length; i++) {
$list.appendChild($listGroupA[i]);
}
}
var reverse = 1;
$('#sort').click(function () {
reverse = reverse * -1;
sort(reverse);
});
答案 1 :(得分:0)
您可以删除最后一个列表项并再创建一个项目并将其附加到容器div中,如下所示:
var world = document.getElementById("2");
var id = world.id;
var data = world.getAttribute("data-order");
var div = document.getElementsByClassName("list")[0];
div.removeChild(world);
var newA = document.createElement("a");
div.appendChild(newA);
newA.id = id;
newA.dataset.order = data;
答案 2 :(得分:0)
Reorder = function()
{
var x = document.getElementsByTagName('a');
document.getElementsByClassName('list').innerHTML = "";
var content = "";
for(i = x.length; i > 0; i--)
{
content = content + x[i - 1].outerHTML;
}
document.getElementsByClassName('list').innerHTML = content;
}
上面的代码将现有项目放入数组并清除内容。现在,它们将被添加到div中。我在这里使用了classname将它添加到div。