使用 jQuery 更改 html 位置
Change html position with jQuery
我正在尝试使用 jQuery 在数组函数中更改某个列表的位置
http://jsfiddle.net/6r5jp5Lk/9/
$('div').each(function() {
var answer = JSON.parse('[' + $(this).find('.order').val() + ']'),
list = $(this).find('ul');
$.each(answer, function(index, value) {
list.append($('li[data-order="' + value + '"]'));
});
});
为什么内容要追加两次?
将div 更改为 .list,它工作正常
$('.list').each(function() {
var answer = JSON.parse('[' + $(this).find('.order').val() + ']'),
list = $(this).find('ul');
$.each(answer, function(index, value) {
list.append($('li[data-order="' + value + '"]'));
});
});
如果您检查您有 4 个div 标签,则您没有关闭div 标签。检查更新的 jsfiddle。
<div>
<ul class="list">
<li data-order="1">1</li>
<li data-order="2">2</li>
<li data-order="3">3</li>
<li data-order="4">4</li>
<input class="order" type="hidden" value="4,2,1,3" />
</ul>
</div>
<div>
<ul class="list">
<li data-order="1">1</li>
<li data-order="2">2</li>
<li data-order="3">3</li>
<li data-order="4">4</li>
<input class="order" type="hidden" value="3,2,4,1" />
</ul>
</div>
http://jsfiddle.net/6r5jp5Lk/16/
我修复了 http://jsfiddle.net/6r5jp5Lk/15/
$('.list').each(function() {
var answer = $(this).find('.order').val().split(','),
list = $(this);
$.each(answer, function(index, value) {
list.append($('li[data-order="' + value + '"]', list));
});
});
相关文章:
- 加载页面时更改html页面的位置
- HTML文档中脚本标记的位置-<头部>&<身体>有不同的行为
- 将Rails后端添加到JS/HTML/CSS应用程序时,正确的文件位置是什么
- JavaScript OnChange Listener在HTML标记中的位置
- 获取 HTML 5 音频控制文件位置并在不使用 id 选择器的情况下更新 src
- 一个html/javascript'小工具'知道用户何时单击了小部件外的任意位置
- 内容可编辑分区-根据内部HTML位置的光标位置
- 如何在提交html表单后保持相同的位置
- 如何使用位置获取滚动功能获取 HTML 中的元素标签
- 如何在 html Web 应用中检测滑动原点位置
- 如何使某个框等于图像HTML的位置
- HTML 按钮以在页面上的其他位置提交表单
- 为什么我在 webpack 中需要 html 文件时会得到一个位置字符串
- 如何在 Google App Engine 上存储 HTML 5 地理位置数据
- 如何获取相对于 HTML 页面的标记位置
- HTML重定向到错误的位置
- JSON获取地理位置在HTML中未返回值
- HTML-从javascript中的URL位置读取.txt文件
- 如何让滑块在ipad上点击到特定位置.HTML Javascript
- 谷歌浏览器不会问我的位置- html/ js