標籤:js addclass js splice js 數組處理 js 數組元素刪除 js 數組元素插入
上次寫了一個輪播的方法:http://blog.csdn.net/stronglyh/article/details/46833499
因為別人問我的時候,給了我html,於是乎我就看到了頁面中引用了jquery,所以就用jquery寫了,今天細想了下jquery中有一個addClass方法,不知道傳統的js是否可以使用搞定呢。
<html><style>.font_class {color:#FF0000;font-weight:bold;}</style><script language="javascript">function addClass(cc) {var obj = document.getElementById('span_1');var c_class = obj.className;if(c_class == "") {obj.className = cc;} else {// var reg = /^(.*?)font_1(.*?)$/i;// new RegExp("(^|\\s)"+className+"(\\s|$)")var reg = new RegExp("(^|.*?)" + cc + "(.*?)");if(c_class.match(reg)) {return;} else {c_class += ' ' + cc;obj.className = c_class;}}}function removeClass(cc) {var obj = document.getElementById('span_1');var c_class = obj.className;if(c_class == "") {return;} else {var has_c = false;var a = c_class.split(" ");var l = a.length;for(var i=0;i<l;i++) { if(a[i] == cc) {has_c = true;break; }}if(has_c) {a.splice(i,1);obj.className = a.join(" ");}}}function hasClass(cc) {var obj = document.getElementById('span_1');var c_class = obj.className;var reg = new RegExp("(^|.*?)" + cc + "(.*?)");if(c_class.match(reg)) {alert('此class已經存在啦,^_^');} else {alert('此class還不存在哦,^_^');}}</script><span id="span_1" class="kaishi">o(∩_∩)o...哈哈</span><br /><input type="button" onclick="addClass('font_class');" value="點我增加class"><input type="button" onclick="removeClass('font_class');" value="點我刪除class"></html>
其中在刪除的時候使用了splice方法
對於這個方法,總共有三個比較常用的用法,詳細講解下:
1.刪除-用於刪除元素,兩個參數,第一個參數(要刪除第一項的位置),第二個參數(要刪除的項數)
2.插入-向數組指定位置插入任意項元素。三個參數,第一個參數(其實位置),第二個參數(0),第三個參數(插入的項)
3.替換-向數組指定位置插入任意項元素,同時刪除任意數量的項,三個參數。第一個參數(起始位置),第二個參數(刪除的項數),第三個參數(插入任意數量的項)
var lang = ["php","java","javascript"]; //刪除 var removed = lang.splice(1,1); alert(lang); //php,javascript alert(removed); //java ,返回刪除的項 //插入 var insert = lang.splice(0,0,"asp"); //從第0個位置開始插入 alert(insert); //返回空數組 alert(lang); //asp,php,javascript //替換 var replace = lang.splice(1,1,"c#","ruby"); //刪除一項,插入兩項 alert(lang); //asp,c#,ruby alert(replace); //php,返回刪除的項
那麼現在大家應該知道怎麼使用了吧,突然發現還是jquery比較方便啊。
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
js----數組處理之splice(有js原始addClass方法哦)