引用JS:
www.cyin.cn/js/front/supermarquee.js
HTML代码:
<div class="zuixinxuqiu" style="height: 197pxwidth: 678pxoverflow: hiddenposition: relative">
<ul>
<dl class="clearfix">
<dt class="coladdress">
成都市</dt>
</dl>
<dl class="clearfix">
<dt class="coladdress">
成都市</dt>
</dl>
<dl class="clearfix">
<dt class="coladdress">
成都市</dt>
</dl>
<dl class="clearfix">
<dt class="coladdress">
成都市</dt>
</dl>
<dl class="clearfix">
<dt class="coladdress">
成都市</dt>
</dl>
</ul>
</div>
执行JS:
$(".zuixinxuqiu").kxbdSuperMarquee({
isEqual: false,
distance: 33,
time: 5,
direction: 'up'
})
var str = "asodn,f啊吊/l丝激发12323;"var temp = { str: "asodn,f啊吊/l丝激发12323;", startIndex: 0, offset: 2, toIndex: 5 }
function moveCharPosition(opt) {
var s = opt.str.split(''), st = s.splice(opt.startIndex, opt.offset)
s.splice.apply(s, [].concat(opt.toIndex - opt.offset, 0).concat(st))
return s.join('')
}
alert(moveCharPosition(temp))
没有进行容错处理(比如没有对opt及其属性、值的合法性判断 等),你要自己完善,功能实现了。这个代码片段只负责移动字符位置,不负责替换,交叉移动等扩充性功能,如果需要可以自己修改。
opt中,str表示预处理字符串,startIndex表示要移动字符在字符串中的开始索引,offset表示移动几个字符,toIndex表示移动到基于预处理字符串中的位置索引