Jump to content
  • 0

Jquery


mini
 Share

Question

Привет человеки.

Нужна Ваша помощь, что то я вообще зашёл в ступор с этим Jquery, вот что я хочу получить при нажатии а ссыку окно открывается, а при клине на область за окном, окно закрывается, вот писал код только что то он не работает :)

что здесь не правильно, как я понимаю когда видимый элемент то работает $(document).click(function(){}, а когда не видимый должна работать $("#goMyPage").click(function(){}, но не работает HELP ME!!!

<script type="text/javascript">
$(document).ready(function(){
if (".go_mypage:visible") {
$(document).click(function(){
$(".go_mypage").css("display", "none");
});

}
if (".go_mypage:hidden") {
$("#goMyPage").click(function(){
$(".go_mypage").css("display", "block");
});

}
});
</script>

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 0

Ну так нельзя делать, потому что этот скрипт не проверяет .go_mypage на видимость во время клика он проверяет его на видимость только во время загрузки страницы и все... Чем не устраивает обычное переключение видимости при клике по ссылке?

Link to comment
Share on other sites

  • 0

Вот написал скриптик однако лично мне он не нравится... Суть в том что кликая на ссылку ты автоматически кликаешь по документу, но фишка в том что сначала выполнится действие клика на ссылку а дальше выполняется действие клика по документу... По этому идея изначальна немного странная...

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>test</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
$(function(){
$(document).mousedown(function(){
if ($('div#con').is(':hidden')){
$('a#link').mouseup(function(){$('div#con').show();});
} else {$('div#con').hide();}
});
});
</script>
<style type="text/css">
#con {height:90px;width:200px;background-color:aqua;display:none;}
</style>
</head>
<body>
<div>
<a id="link" href="#">link</a>
<div id="con"></div>
</div>
</body>
</html>

Edited by stars
Link to comment
Share on other sites

  • 0

Вот посмотри есть такая стаья http://habrahabr.ru/blogs/jquery/57466/, вот какой результат http://vladibakh.narod.ru/example4/popup.html, но мне не нужно что бы было затухание фона и прочее, мне нужно что бы при клике не ссылку блок появился а при клине вне области этого блок он просто пропадал, пробовал с тем кодом что там представлен разобраться, не получилось вытянуть то что именно надо, попробовал сам что то написать, но видимо моих познаний в Jqeury ещё не хватает что бы реализовать что то подобное :)

Link to comment
Share on other sites

  • 0

Ну если бы вы удосужились просмотреть приведенный вами пример(мне лично он понравился) там при клике по ссылке первым действием растягивается блок на весь экран(который делает серый фон) далее там центрируются второй блок с формой и проявляется у этих 2 блоков разный z-index... Все довольно просто, так вот когда на вашем примере вы кликаети на серый фон вы кликаете не на документ а именно на <div id="opaco" class="hidden"></div>

если хотите сделайте также и у себя... только блок который будет растягиваться на весь экран вам нужен прозрачный, в примере есть такая строчка fadeTo('slow', 0.7) именно она и делает фон серым меняя его прозрачность...

Могу лишь посоветовать скачать себе книжку "jQuery – подробное руководство по продвинутому JavaScript" (авторы Бер Бибо, Иегуда Кац) она хорошо написана и читается быстро... У меня на нее ушла где-то неделя притом что я ее читал на работе...

Edited by stars
Link to comment
Share on other sites

  • 0
Ну если бы вы удосужились просмотреть приведенный вами пример(мне лично он понравился) там при клике по ссылке первым действием растягивается блок на весь экран(который делает серый фон) далее там центрируются второй блок с формой и проявляется у этих 2 блоков разный z-index... Все довольно просто, так вот когда на вашем примере вы кликаети на серый фон вы кликаете не на документ а именно на <div id="opaco" class="hidden"></div>

если хотите сделайте также и у себя... только блок который будет растягиваться на весь экран вам нужен прозрачный, в примере есть такая строчка fadeTo('slow', 0.7) именно она и делает фон серым меняя его прозрачность...

Могу лишь посоветовать скачать себе книжку "jQuery – подробное руководство по продвинутому JavaScript" (авторы Бер Бибо, Иегуда Кац) она хорошо написана и читается быстро... У меня на нее ушла где-то неделя притом что я ее читал на работе...

Прикольно я как раз начап её читать :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy