- 1
- 2
- 3
- 4
var body=document.getElementsByTagName('body')[0];
var newBody="";
newBody='<div id="'+this.cntID+'" class="hide you">'+this.flashCntDivArr.join('')+'</div>'+bgLayerDiv+"<div id='tplCnt'>"+body.innerHTML+"</div>";
body.innerHTML=newBody;
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+157
var body=document.getElementsByTagName('body')[0];
var newBody="";
newBody='<div id="'+this.cntID+'" class="hide you">'+this.flashCntDivArr.join('')+'</div>'+bgLayerDiv+"<div id='tplCnt'>"+body.innerHTML+"</div>";
body.innerHTML=newBody;
Натолкнулся в одном из проектов на такой вот способ добавления элемента в DOM. Я чего-то не понимаю?
+146
(function() {
var elms = document.getElementsByClassName("tab");
for( var i=0, l = elms.length; i<l; i++) {
(function(i) {
elms[i].onclick = function() {
var container=document.getElementsByTagName("span")[i];
var this_height = container.offsetHeight;
if (document.getElementsByTagName("p")[i].style.height==this_height+"px") { // If
var count = this_height;
var timeout_id = setInterval( function() {
if (count > 1) {
count--;
} else { clearTimeout(timeout_id); }
document.getElementsByTagName("p")[i].setAttribute("style", "height:"+count+"px");
} , 1)
} else {
var count = 0;
var timeout_id = setInterval( function() {
if (count < this_height) {
count++;
} else { clearTimeout(timeout_id); }
document.getElementsByTagName("p")[i].setAttribute("style", "height:"+count+"px");
} , 1)
}
};
})(i);
}
})();
Простейший аккордион.
+154
$(this).parent().parent().next().next().css({ visibility: 'visible' });
+154
this.draw = function(scale) {
ctx.save();
ctx.translate(this.posX, this.posY);
if (this.scale && this.scale < 1) ctx.scale(this.scale, this.scale);
if (scale > 0) {
var boxHeight = 124.678568 + 0.394292; // ?!
ctx.translate(0, ((boxHeight)-(scale*(boxHeight))));
ctx.scale(scale,scale);
}
// вырезанный говнокод, отрисовывающий бабл в обычном масштабе
ctx.restore();
}
Отрисовка нескольких фигур а-ля "бабл" на canvas с анимацией "выростания" бабла из своего нижнего левого угла. В метод draw передается параметр scale, содержащий значение масштаба фигуры в текущем кадре. /facepalm
+154
let origOverviewShow;
function onOverviewShow() {
/* ... */
Lang.bind(Main.overview, origOverviewShow)();
}
function enable() {
/* ... */
origOverviewShow = Overview.Overview.prototype.show;
Overview.Overview.prototype.show = onOverviewShow;
}
https://github.com/rat4/layoutperwindow/blob/master/layoutperwindow%40rat4.github.com/extension.js
+158
function hideHint() {
$(".popup_hint").each(function() {
if($(this).attr("class")=="popup_hint") $(this).hide();
});
$(".popup_hint_or").each(function() {
if($(this).attr("class")=="popup_hint_or") $(this).hide();
});
}
Масло масляное.
+153
<!--[if IE 6]><script>
var ____________ie6 = true;
</script><![endif]-->
Из кода страницы почтового ящика на mail.ru. И зачем было когда-то ругать себя за govnokod.ru/5573 - даже большие дядьки так делают, чё я!
+152
/**
* Create table sorting
**/
var sotr=function(el,by){
var trs=dialog.find('#file_list').find('tr')
,reverse=false;
if(el.attr('reverse')=='true'){
el.removeAttr('reverse');
reverse=true;
}else{
el.attr('reverse','true')
}
trs=trs.sort(function(a,b){
a=$(a);
b=$(b);
var i=0;
switch(by){
case 'by-name':
var txt1=$(a.find('td')[0]).text();
var txt2=$(b.find('td')[0]).text();
if ((txt1 < txt2)){
return reverse?1:-1;
}else if ((txt1 > txt2)&&!reverse){
return reverse?-1:1;
}else{
return 0;
}
break;
case 'by-link':
if(reverse)
return $(a.find('td')[1]).text().length-$(b.find('td')[1]).text().length
else
return $(b.find('td')[1]).text().length-$(a.find('td')[1]).text().length
break;
case 'by-date':
var aDate=new Date(parseInt($(a.find('td')[2]).attr('data-date'))*1000)
,bDate=new Date(parseInt($(b.find('td')[2]).attr('data-date'))*1000);
return (aDate>bDate)&&(reverse)?-1:1;
break;
}
});
dialog.find('#file_list').find('tr').remove();
trs.bind('click',function(e){
trClickListener.call(this,e);
});
trs.bind('dblclick',function(e){
trDBClickListener.call(this,e);
});
trs.appendTo(dialog.find('#file_list')).show(100);
}
+154
if((typeof folder!='undefined')&&folder!='untag'){
if((typeof cache[type].files[folder]!='undefined')&&caches){
pagination.create(cache[type].files[folder].count, false, cache[type].files[folder]);
show.loading(false);
return;
}
var params = {
'tag':folder
};
}
Вот глянул свой код полугодовалой давности, нужно было добавить пару фич. Охренел, 3 тысячи строк подобного вида и не одного комментария. Я себя ненавижу
+153
// Очистка полей формы
function clearForm(formName) {
//var ff = document.getElementById(formName);
var ff = document.forms[formName];
for (var i=0; i<ff.elements.length; i++) {
if (ff.elements[i].type == "text") ff.elements[i].value="";
if (ff.elements[i].type == "select-one") ff.elements[i].value="";
if (ff.elements[i].type == "checkbox") ff.elements[i].checked=false;
if (ff.elements[i].type == "radio") {
ff.elements[i].value="0";
ff.elements[i].checked=false;
}
}
}
Действительно, зачем this.form.reset() использовать?