- 1
- 2
- 3
if ($('.nav>ul>li').hasClass('selected')) {
$('.selected').addClass('active');
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+1
if ($('.nav>ul>li').hasClass('selected')) {
$('.selected').addClass('active');
}
Кусок кода из меню
0
$('.buy_button').click(function () {
$(".icon-minus").click();
$(".icon-minus").click();
$(".icon-minus").click();
$(".icon-minus").click();
$(".icon-minus").click();
$(".icon-minus").click();
$(".icon-minus").click();
$(".icon-minus").click();
$(".icon-minus").click();
$(".icon-minus").click();
$('.modal__bg').hide();
$('.modal').hide();
var item = $(this).attr('item');
count = 1;
if (item == 3) {
count = 6
$(".plus-minus").click();
$(".plus-minus").click();
$(".plus-minus").click();
$(".plus-minus").click();
$(".plus-minus").click();
}
if (item == 2) {
count = 3
$(".plus-minus").click();
$(".plus-minus").click();
}
if (item == 1) {
count = 1
}
$.fancybox.open($('#foo'));
});
Тот результат, когда сэкономил немножечко денег...
−1
<CustomTimePicker
ref={ref => {
if (!ref || this.moved || this.handled)
return;
this.handled = true;
ref.picker.addEventListener('click', () => {
if (this.moved)
return;
setTimeout(() => {
const panel = ref.panelInstance;
if (!panel || !panel._reactInternalInstance)
return;
const node = panel._reactInternalInstance._renderedComponent._hostNode.parentNode.parentNode.parentNode;
this.moved = true;
this.refs.container.appendChild(node);
ref.picker.click();
ref.picker.click();
}, 0);
});
}}
showSecond={false}
value={this.props.value || moment()}
className="timepicker"
onChange={(e) => this.handleChange(e)}
format={this.format}
use12Hours
/>
+1
<div class="checkbox removeSpan">
<input id="all-standard-colors" name="all-standard-colors" type="checkbox"
data-bind="checked: $parent.selectAllStandardColors enable: $parent.isTabEnabled"/>
<label for="all-standard-colors">All standard</label>
</div>
<style>
div.checkbox > input + label {
padding: 4px 0 4px 29px;
background-image: url("../images/unchecked-checkbox.png");
background-size: 21px;
background-position: left center;
background-repeat: no-repeat;
}
div.checkbox > input:checked + label {
background-image: url("../images/checkbox-checked.png");
background-size: 21px;
background-position: left center;
background-repeat: no-repeat;
}
</style>
<script>
$(document).ready(function() {
setInterval(function(){
$('.removeSpan span').remove();
}, 2000);
});
</script>
UI на knockout.js. Есть бага - пропадает галочка на чекбоксе. Выясняется что knockout для валидации вставляет после input тега невидимый span
<span></span>
Неизвестный товарищ фиксит это не вдаваясь в детали верстки и CSS селекторы - добавляет специальный класс, которым маркает все чекбоксы и поллер который убирает из них span каждые 2 секунды. Но про это никто не узнает. В течении полугода появляется еще десяток другой багов с отображением чекбоксов которые фиксят не вдаваясь в детали. И только потом замечают странный класс removeSpan и находят поллер в недрах domUtil.js, удаляют его и меняют один символ в стилях - вместо div.checkbox > input + label стало div.checkbox > input ~ label
+1
var x = '$$>1 ? eval(x.replace(/\\$\\$/g, $$-1)) + eval(x.replace(/\\$\\$/g, $$-2)) : 1';
eval(x.replace(/\$\$/g, 5))
Yo dawg, I heard you like evaluation. So I put evaluation in your evaluation so you could evaluate while you evaluate
Фибоначчи, по мотивам http://govnokod.ru/20105#comment330201 хуйни
−1
$(document).ready(function() {
$('.tab').click(function(){
var tabs = $(this).closest('.tabs');
// Удаляем классы active
$(this).siblings().removeClass('active');
tabs.children('.tabs-content').children('.tabs-content-item').removeClass('active');
// Добавляем классы active
$(this).addClass('active');
tabs.children('.tabs-content').children('.tabs-content-item').eq($(this).index()).addClass('active');
})
});
Вот пример:
https://codepen.io/ShvedOFF/pen/weBgrQ
Как более грамотно оформить данный код?
Все отлично работает, но выглядит коряво.
+2
/**
* Установка условий проверки корректности дат на начальную дату
* */
setConditionOne(date1, date2) {
if ( (date1[2] > date2[2]) && (date1[1] >= date2[1]) && (date1[0] < date2[0]) )
return false;
else if ( (date1[2] > date2[2]) && (date1[1] >= date2[1]) && (date1[0] >= date2[0]) )
return true;
else if ( (date1[2] == date2[2]) && (date1[1] > date2[1]) && (date1[0] == date2[0]) )
return true;
else if ( (date1[2] > date2[2]) && (date1[1] > date2[1]) )
return true;
else if (date1[2] > date2[2] && (date1[1] > date2[1]) && (date1[0] > date2[0]) )
return true;
else if ( (date1[2] < date2[2] ) && (date1[1] > date2[1]) && (date1[0] < date2[0]))
return false;
else if ( (date1[2] <= date2[2] ) && ( date1[1] > date2[1]) && (date1[0] <= date2[0]) )
return true;
else if ( (date1[2] > date2[2] ) && ( date1[1] >= date2[1]) && (date1[0] < date2[0]) )
return false;
else if ( (date1[0] > date2[0]) )
return true;
else if ( (date1[2] == date2[2] ) && ( date1[1] > date2[1]) && (date1[0] == date2[0]) )
return true;
else if ( (date1[2] > date2[2] ) && ( date1[1] > date2[1]) && (date1[0] == date2[0]) )
return true;
else if ( (date1[2] > date2[2] ) && ( date1[1] == date2[1]) && (date1[0] == date2[0]) )
return true;
else
return false;
}
/**
* Установка условий проверки корректности дат на конечную дату
* */
setConditionTwo(date1, date2) {
if ( (date1[2] > date2[2]) && (date1[1] >= date2[1]) && (date1[0] < date2[0]) )
return false;
else if ( (date1[2] > date2[2]) && (date1[1] >= date2[1]) && (date1[0] >= date2[0]) )
return true;
else if ( (date1[2] == date2[2]) && (date1[1] > date2[1]) && (date1[0] >= date2[0]) )
return true;
else if ( (date1[2] > date2[2]) && (date1[1] > date2[1]) )
return true;
else if ( date1[2] > date2[2] && (date1[1] > date2[1]) && (date1[0] > date2[0]) )
return true;
else if ( (date1[2] < date2[2] ) && (date1[1] > date2[1]) && (date1[0] < date2[0]) )
return false;
else if ( (date1[2] > date2[2] ) && ( date1[1] >= date2[1]) && (date1[0] < date2[0]) )
return false;
else if ( (date1[2] <= date2[2] ) && ( date1[1] > date2[1]) && (date1[0] <= date2[0]) )
return true;
else if ( (date1[0] > date2[0]) )
return true;
else if ( (date1[2] > date2[2] ) && ( date1[1] > date2[1]) && (date1[0] == date2[0]) )
return true;
else
return false;
}
Сравнение двух дат.
−1
if (typeof $el.html() !== "undefined") {
//...
}
Проверка на существование элемента...
+3
// eval both the numbers to remove quotes
// otherwise 4 + 5 will be "4" + "5" which in JS will equal 45
evalDisplay = eval(displayNum),
evalStored = eval(storedNum);
Гениальный способ получить число из строки (вместо evalDisplay = +evalDisplay)
0
// oldman and pilul
$( "#draggable" ).draggable();
$( "#draggable1" ).draggable();
$( "#droppable" ).droppable({
drop: function() {
$("#droppable").attr("src","img/happy1.png");
$("#droppable1").attr("src","img/happy1.png");
$('#draggable').hide();
$('#draggable1').hide();
}
});
//buttons
$('#weekbtn').click(function(){
if ( $('#weekbtn').attr("src")== "img/week-pushed-button.png" ) {
$("#weekbtn").attr("src","img/week-button.png");
$("#weekbtn1").attr("src","img/week-button.png");
} else {
$("#weekbtn").attr("src","img/week-pushed-button.png");
$("#weekbtn1").attr("src","img/week-pushed-button.png");
}
});
$('#daybtn').click(function(){
if ( $('#daybtn').attr("src")== "img/day-pushed-button.png" ) {
$("#daybtn").attr("src","img/day-button.png");
$("#daybtn1").attr("src","img/day-button.png");
} else {
$("#daybtn").attr("src","img/day-pushed-button.png");
$("#daybtn1").attr("src","img/day-pushed-button.png");
}
});
$('#mounthbtn').click(function(){
if ( $('#mounthbtn').attr("src")== "img/mounth-pushed-button.png" ) {
$("#mounthbtn").attr("src","img/mounth-button.png");
$("#mounthbtn1").attr("src","img/mounth-button.png");
} else {
$("#mounthbtn").attr("src","img/mounth-pushed-button.png");
$("#mounthbtn1").attr("src","img/mounth-pushed-button.png");
}
});
//roller
function move(){
var rng = document.getElementById('scrol-line'),
rng1 = document.getElementById('scrol-line1'),
roll = document.getElementById('bgc'),
roll1 = document.getElementById('bgc1');
roll.value = rng.value;
rng1.value = rng.value;
roll1.value = rng1.value;
}
//slider
var slideIndex = 1;
showSlides(slideIndex);
function plusSlides(n) {
showSlides(slideIndex += n);
}
function currentSlide(n) {
showSlides(slideIndex = n);
}
function showSlides(n) {
var i;
var slides = document.getElementsByClassName("sliders");
if (n > slides.length) {
slideIndex = 1
}
if (n < 1) {
slideIndex = slides.length
}
for (i=0; i < slides.length; i++) {
slides[i].style.display = "none";
}
slides[slideIndex-1].style.display = "block";
}