11.07.2017, 22:26
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
cadijob,
не понимаю!!! видимо более ничем помочь не могу.
|
|
11.07.2017, 22:27
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,990
|
|
cadijob,
if(OpenArea == false), это для упертых. )
0 - это тоже false, а 1 - это тоже true, если проверяется истина/ложь (булево значение), то есть писать if(OpenArea == false), это мягко говоря лишние хлопоты, так как если OpenArea равна или 0 или false, то if(!OpenArea) в обоих случаях вернет true.
Бывает, что например функция может возвращать как 0 так и false, в этом случае проверка if(!name(props)) не годится, вот тогда проверять нужно не только значение, но и тип:
if(OpenArea === false)
и это называется строгим сравнением. У вас же проблемы не потому что вместо true ноль или наоборот, а в том, что где-то логика кода вашего не соответствует ожиданиям.
|
|
11.07.2017, 22:49
|
Аспирант
|
|
Регистрация: 11.07.2017
Сообщений: 38
|
|
Сообщение от laimas
|
cadijob,
У вас же проблемы не потому что вместо true ноль или наоборот, а в том, что где-то логика кода вашего не соответствует ожиданиям.
|
Почему?
Сделал так -
if (OpenArea === false) {
$(".tags li").on("click", function(){
alert($("a", this).text());
// if (OpenArea == false) {
// console.log(OpenArea);
// $(this).css( "transform", "scale(0.85)" );
// }
});
}
В консоли OpenArea - true. Но код, выше, выполняется.
|
|
11.07.2017, 22:51
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
Сообщение от cadijob
|
Сделал так -
|
так делать вредно!!!
|
|
11.07.2017, 22:51
|
Аспирант
|
|
Регистрация: 11.07.2017
Сообщений: 38
|
|
Всё.
$(".tags li").on("click", function(){
if (OpenArea === false) {
alert($("a", this).text());
// if (OpenArea == false) {
// console.log(OpenArea);
// $(this).css( "transform", "scale(0.85)" );
// }
}
});
Работает. Спасибо за совет с ===.
|
|
11.07.2017, 22:52
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
cadijob,
лучше бы не колдовали, а обьяснили алгоритм, того что хотите сделать.
|
|
11.07.2017, 22:57
|
Аспирант
|
|
Регистрация: 11.07.2017
Сообщений: 38
|
|
Сообщение от рони
|
cadijob,
лучше бы не колдовали, а обьяснили алгоритм, того что хотите сделать.
|
Вам тоже кажется, что "говнокод"?)
Сейчас постараюсь объяснить.
Вы же макет видели? Так вот, когда форма открывается то по тегам нельзя перейти(то есть не редеректит на другую страницу во время клика) и в дальнейшем ajax будет эти теги в массив собирать по кликам(когда форма открыта, опять же). А вот когда форма закрыта то можно и перейти по ссылке в теге, и "в дальнейшем ajax будет эти теги в массив собирать по кликам" не будет работать.
P.S. Заноситься в массив будет id тега, который в свою очередь берётся из БД.
Последний раз редактировалось cadijob, 11.07.2017 в 23:00.
|
|
11.07.2017, 22:58
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
Сообщение от cadijob
|
Работает.
|
интересно чем ваш код отличается от кода в посте 27
|
|
11.07.2017, 23:03
|
Аспирант
|
|
Регистрация: 11.07.2017
Сообщений: 38
|
|
Сообщение от рони
|
интересно чем ваш код отличается от кода в посте 27
|
Я его пробовал использовать. Не работало.
|
|
11.07.2017, 23:07
|
|
Профессор
|
|
Регистрация: 27.05.2010
Сообщений: 33,109
|
|
cadijob,
что не так?
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>title</title>
<link href="https://fonts.googleapis.com/css?family=Roboto&subset=cyrillic" rel="stylesheet">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script>
$(function() {
$("#open-close").show();
$("#block-links").hide();
$("#open-close").click(function(a) {
a.preventDefault();
$("#block-links").slideToggle(400)
});
$(".canDisable").on("click", function(a) {
if ($("#block-links").is(":visible")) a.preventDefault();
})
});
</script>
</head>
<body>
<div class="wrapper" id="scroll">
<div class="container">
<div class="botHeader">
<a href="#" id="open-close">
<div class="talkBtn">
<p>Кнопка которая октрывает форму</p>
</div>
</a>
</div>
<div class="borderShadow"></div>
<div class="talk" id="block-links">
<form action="">
<input type="text" name="textTitle" placeholder="Тема сообщения">
<textarea name="textarea" rows="8" cols="80" placeholder="Текст"></textarea>
</form>
</div>
<div class="tags">
<ul>
<li><a href="" class="canDisable">Тег 1</a></li>
<li><a href="" class="canDisable">Тег 2</a></li>
<li><a href="" class="canDisable">Тег 3</a></li>
<li><a href="" class="canDisable">Тег 4</a></li>
<li><a href="" class="canDisable">Тег 4</a></li>
<li><a href="" class="canDisable">Тег 5</a></li>
<li><a href="" class="canDisable">Тег 6</a></li>
<li><a href="" class="canDisable">Тег 7</a></li>
<li><a href="" class="canDisable">Тег 8</a></li>
<li><a href="" class="canDisable">Тег 9</a></li>
<li><a href="" class="canDisable">Тег 10</a></li>
<li><a href="" class="canDisable">Тег 11</a></li>
<li><a href="" class="canDisable">Тег 12</a></li>
</ul>
</div>
<div class="borderShadow"></div>
<div class="posts">
</div>
</div>
</div>
<div class="footer">
</div>
</body>
</html>
|
|
|
|