Страницы: 1
В декабре 2012 года дописал javascript и он корректно работал в 4 браузерах: Opera (последняя на тот момент версия), Firefox (последняя на тот момент версия), Google Chrome (последняя на тот момент версия), Internet Explorer 8.
В январе 2013 года я обнаружил, что в Google Chrome (т.е. после обновления) скрипт начал работать некорректно. В остальных трёх браузерах всё прекрасно работало до недавнего времени: в Mozilla Firefox 23.0.1 возникла проблема аналогичная проблеме в Google Chrome.
Консоль ошибок ничего не выдает.
Думаю, если понять, что изменилось в Google Chrome 7 месяцев назад и что - в Mozilla Firefox в последнем обновлении, то можно будет решить проблему.
Вот собственно код:
function remove(rid){ var rc=document.getElementById('id'+rid); var dk=document.getElementById('deck'); dk.removeChild(rc); delcook(rid); var ec=document.getElementById(rid); if(ec!=null){ ec.setAttribute('onclick','add('+rid+')'); ec.setAttribute('title','Add to deck'); ec.setAttribute('style',"background-image:url('css/add.png');");} var ids=getcookie('idcook'); var durl=document.getElementById('deckurl'); ar=ids.split('_'); ecok=false; for(var i=0;i<ar.length;i++){if(ar[i]==rid){var k=i; ecok=true;}} if(ecok){ar.splice(k,1);} durl.innerHTML="deck ("+ar.length+")"; if(ar.length){durl.href="deck.php?ids="+ar.join('_');} else {durl.href="deck.php";} var cookie_date=new Date(); cookie_date.setTime(cookie_date.getTime()+500000000); document.cookie="idcook="+ar.join('_')+"; expires="+cookie_date.toGMTString()+"; path=/; domain=ur.f1seclub.st8.ru;"; document.getElementById('zvezdi').innerHTML=sumstar(); }
Отсутствует
Использование функционала вроде setAttribute, document.cookie= , .innerHTML= вообще нежелательно (особенно в коде страницы а не расширения) и при них не гарантируется браузеро-независимость. Лучше jQuery. А если хочешь отладить баг используй расширение firebug, или на худой конец:
Отсутствует
Страницы: 1