2014-07-04 2 views
0

У меня есть игровая доска 8x8. ниже приведен код для создания платы ...Получить атрибут из сетки предметов

for (var i = 0 ; i < TOTAL_ROWS ; i++) { 
tab_imgs[i] = []; 
for (var j = 0 ; j < TOTAL_COLUMNS ; j++) { 
    var num_img = Math.ceil(Math.random() * NUM_IMGS); 

    if (i > 1) { 
    while(tab_imgs[i-2][j] == num_img && tab_imgs[i-1][j] == num_img){ 
     num_img = Math.ceil(Math.random() * NUM_IMGS); 
    } 
    } 
    if (j > 1) { 
    while(tab_imgs[i][j-2] == num_img && tab_imgs[i][j-1] == num_img){ 
     num_img = Math.ceil(Math.random() * NUM_IMGS); 

     if (i > 1) { 
     while(tab_imgs[i-2][j] == num_img && tab_imgs[i-1][j] == num_img){ 
      num_img = Math.ceil(Math.random() * NUM_IMGS); 
     } 
     } 

    } 
    } 

    tab_imgs[i][j] = num_img; 
    render_table += '<div class="jewel jewel_' + num_img + '" data-row="' + i + '" data-col="' + j + '" data-jewel="' + num_img + '" style="top: ' + Number(i*TOTAL_IMGS) + 'px; left: ' + Number(j*TOTAL_IMGS) + 'px;"></div>'; 
} 
} 

Приведенный выше код создаст случайную доску. Моя проблема заключается в том, когда пользователь возобновляет существующую игру. Мне нужно перебрать уже полученный HTML и захватить атрибут «данные-драгоценный камень», так вместо эти строки:

num_img = Math.ceil(Math.random() * NUM_IMGS); 

У меня есть:

num_img = attribute('data-jewel') 

для каждой сетки;

+0

Мое лицо на первый взгляд вопрос: o.o – DontVoteMeDown

ответ

1

Вы можете получить значение атрибута данных с помощью метода JQuery .data():

num_img = +$('.selector').data('jewel'); 
Смежные вопросы