PDA

View Full Version : مشکل با slideToggle



ramin149
جمعه 01 مهر 1390, 13:45 عصر
با سلام من یک div در صفحه قرار دادم که وقتی کاربر روی آن کیلک می کنه یک تکس باکس و دکمه ظاهر می شود . اما وقتی بخوام تکس باکس یا دکمه را انتخاب کنم این دو المنت مخفی می شوند .
کد jquery

$(function () {
$('#Introduction').click(function () {
$('#txt_Introduction').slideToggle();
$('#btn_Introduction').slideToggle();
});
});

farhadfery
جمعه 01 مهر 1390, 17:32 عصر
این دکمه و باتن توی همون دیو قرار ندارند؟

nadi_1368
شنبه 02 مهر 1390, 09:36 صبح
از خاضیت های slideUp و slideDown استفاده کن

Saber Mogaddas
شنبه 02 مهر 1390, 18:30 عصر
یه function بنویس و اون دوتارو show کن..

ramin149
جمعه 08 مهر 1390, 10:43 صبح
بچه من روشهای را که شما گفتید را انجام دادم اما باز هم همون مشکل را دارد . من فایل را ضمینه می کنم لطفا یه نگاه بندازید و کمک کنید که این مشکل من حل شود

nilmil_nil
جمعه 08 مهر 1390, 11:16 صبح
من مشکل رو فهمیدم
چون شما گفتید که وقتی رو Div کلیک کرد انجام بشه پس کاربر هر جای Div کلیک کنه SlideToggle انجام میشه
در نتیجه شما باید یا تکست باکس و دکمه رو خارج از Div قرار بدین یا اینکه روی رویداد کلیک یه دکمه یا لینک کار کنید و نه یه Div
امید وارم متوجه شده باشین

farhadfery
جمعه 08 مهر 1390, 12:15 عصر
این دکمه و باتن توی همون دیو قرار ندارند؟
من هفته پیش همین موضوع را که جناب nilmil گفتند، بهشون گفتند چک کنید. اما دیگه هیچ جوابی که ازشون نرسید هیچ، نامه شم نرسید.:گیج: آخه گفته می شه خودشهم نیاد، نامش می یاد

nilmil_nil
جمعه 08 مهر 1390, 14:28 عصر
من هفته پیش همین موضوع را که جناب nilmil گفتند، بهشون گفتند چک کنید. اما دیگه هیچ جوابی که ازشون نرسید هیچ، نامه شم نرسید.:گیج: آخه گفته می شه خودشهم نیاد، نامش می یاد
زیاد سخت نگیر.مهم اینه که جواب درست باشه

Mahnet
جمعه 08 مهر 1390, 16:24 عصر
با سلام
در jquery تابع bind نسبت به live سریع تر عمل می کنه و من دو روش رو مطرح می کنم انتخاب با شماست ...
روش اول :

$(function () {
$('#txt_Introduction, #btn_Introduction').bind('click',function () {
// .........
return false;
});
$('#Introduction').live('click',function () {
$('#txt_Introduction').slideToggle();
$('#btn_Introduction').slideToggle();
});
});

روش دوم :

$(function () {
var isHover = false;
$('#txt_Introduction, #btn_Introduction').mouseenter(function () {
isHover = true;
});
$('#txt_Introduction, #btn_Introduction').mouseleave(function () {
isHover = false;
});
$('#Introduction').click(function () {
if(isHover) return false;
$('#txt_Introduction').slideToggle();
$('#btn_Introduction').slideToggle();
});
});

من روش دوم رو ترجیح می دم ...
موفق باشی

salman_looloo
دوشنبه 11 مهر 1390, 21:21 عصر
مهندس اگر مشکلتون هنوز حل نشده از این کد استفاده کن .

$(document).ready(function () {
$('.Introduction').toggle(function () {
$('#txt_Introduction').show();
$('#btn_Introduction').show();
}, function () {
$('#txt_Introduction').hide();
$('#btn_Introduction').hide();
});
});


کد های HTML هم به این صورت تغییر می کنه.



<div id="Introduction">
<div class="Introduction">
<div id="image">
</div>
معرفی سایت هتل فلامینگو کیش به دوستان خود
<br />
<span>ارسال پیغام برای دوستان</span>
<br />
<br />
</div>
<input id="txt_Introduction" class="txt_Introduction" type="text" />
<input id="btn_Introduction" class="ButtonBig" type="button" value="ارسال" style="display: none" />
</div>


Css هم هیچ تغییری نکرده همون فایل خودتون.
خوش باشی