960グリッドシステムを試して、divの配置について学ぶためのページを作成しました。ページには最大4つのdivがあります。ドロップダウンから新しいグリッドサイズ、プル、またはプッシュ値を選択した場合、現在のクラス、つまり、、またはを削除し、新しく選択したクラスを追加する必要がgrid_8
ありpull_5
ますpush_4
。
function alter_grid1(new_class_name){
var old = document.getElementById('grid1');
var classes = old.className.split(' ');
var old_class_name = 'cessna';
$.each(classes, function(){
if(old_class_name == 'cessna' || old_class_name == null){
old_class_name = this.match('/grid_1|grid_2|grid_3|grid_4|grid_5|grid_6|grid_7|grid_8|grid_9|grid_10|grid_11|grid_12|grid_13|grid_14|grid_15|grid_16|grid_17/');
}
});
$(old).removeClass('grid_1 grid_2 grid_3 grid_4 grid_5 grid_6 grid_7 grid_8 grid_9 grid_10 grid_11 grid_12 grid_13 grid_14 grid_15 grid_16').addClass(new_class_name);
console.log('Old grid1 class name is ' + old_class_name + ' and New grid1 class name is ' + new_class_name);
}
addClass(new_class_name);
何の問題もなく使用できます。
問題なく使用できますremoveClass('grid_8');
(実際のクラス名はgrid_8)
私が使用するとき、それはうまくいきremoveClass(old_class_name);
ません。エラーメッセージはなく、firebugには何もありませんが、機能しません。
以前の値がどうなるかわからないので、そこにある可能性のあるクラスをすべて削除する必要があります
$(old).removeClass('grid_1 grid_2 grid_3 grid_4 grid_5 grid_6 grid_7 grid_8 grid_9 grid_10 grid_11 grid_12 grid_13 grid_14 grid_15 grid_16').addClass(new_class_name);
それが私がそれを機能させることができる唯一の方法です。確かに機能しますが、何かが足りないか、何か間違ったことをしているようです。それが助けになるなら、あなたは私がここでやろうとしていることを見ることができます。varを使用してクラスを追加する方法がわかりませんが、同じ方法でクラスを削除することはできません。