رفتن به مطلب

عمومی کردن کد لایت باکس


پست های پیشنهاد شده

سلام. من این لایت باکس رو برای متن دانلود و یه سری تغییرات روش دادم.

به صورت پیش فرض یک پنجره داره که با کلیک بر روی "متن نمونه یک" نمایش داده میشه، اما من چند تا پنجره دارم و می خوام برای هر پنجره یه لینک در صفحه داشته باشم.

راهی که به ذهنم رسید اینه که برای هر پنجره استایل مجزایی تعریف کنم و در بخش click.function هم برای هر پنجره دستور مجزایی قرار بدم. عملی هم شد ولی می خوام ببینم راه راحت تر و عمومی تری نیست که برای هر لینک یه پنجره مجزا نمایش داده بشه، بدون اضافه کردن استایلها و کدهای اضافی برای هر پنجره.


<html>
<head>
<title>Quick Simple Light Box</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"></script>
<style type="text/css">

body
{
font-family: Helvetica, Arial;
}

.backdrop
{
position:fixed;
top:0px;
left:0px;
width:100%;
height:100%;
background:#666;
opacity: .0;
filter:alpha(opacity=0);
z-index:50;
display:none;
}


.box
{
font-family: tahoma;
font-size: 12px;
text-align:right;
direction:rtl;
position:fixed;
top:20%;
left:30%;
width:500px;
height:300px;
background:#ffffff;
z-index:51;
padding:10px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 10px;
-moz-box-shadow:0px 0px 15px #444444;
-webkit-box-shadow:0px 0px 15px #444444;
box-shadow:0px 0px 15px #444444;
display:none;
}

.boxtitle {
text-align:right;
font-weight:bold;
border-bottom: solid 1px #666;
padding-bottom: 8px;
}

.close
{
float:left;
margin-right:6px;
text-align: center;
width: 100px; height: 25px;
background-color:#9F6;
border-radius: 5px;
cursor:pointer;
border-top: solid 1px #9C0;
}

</style>

<script type="text/javascript">

$(document).ready(function(){

$('.lightbox').click(function(){
$('.backdrop, .box').animate({'opacity':'.50'}, 300, 'linear');
$('.box').animate({'opacity':'1.00'}, 300, 'linear');
$('.backdrop, .box').css('display', 'block');
});

$('.close').click(function(){
close_box();
});

$('.backdrop').click(function(){
close_box();
});

});

function close_box()
{
$('.backdrop, .box').animate({'opacity':'0'}, 300, 'linear', function(){
$('.backdrop, .box').css('display', 'none');
});
}

</script>

</head>
<body>

<h1>This is my webpage...</h1>
<p><a href="#" class="lightbox">متن نمونه یک</a></p>
<p><a href="#" class="lightbox">متن نمونه دو</a></p>
<p><a href="#" class="lightbox">متن نمونه سه</a></p>
<div class="backdrop"></div>
<div class="box">
<div class="boxtitle">متن نمونه یک</div>
<p>توضیحات</p>
<div class="close">بستن</div>
</div>
</body>
</html>

test.html

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...