PDA

View Full Version : تک صفحه ای



mohamad_torabi
سه شنبه 17 تیر 1393, 02:28 صبح
سلام
شما اموزش میشناسید که قالب تک صفحه اموزش داده باشه؟
میخوام مثلا رو تماس کلیک کرد بره انتهای صفحه

qartalonline
چهارشنبه 18 تیر 1393, 10:01 صبح
آموزش خاصی نیاز نیست ساده ترین حالتش به شکل زیر هست.

<!DOCTYPE html>
<html>
<head>
<title>title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style type="text/css">
*{
margin: 0;
padding: 0;
}
body, html{
height: 100%;
}
.section{
min-height: 100%;
}
.section>div{
padding: 10px;
padding-top: 40px;
}
#home{
background: #A2DED0;
}
#contact{
background: #F89406;
}
#about{
background: #6BB9F0;
}
ul{
background: #333;
position: fixed;
height: 30px;
width: 100%;
}
ul li{
display: inline-block;
}
ul li a{
color: #fff;
line-height: 30px;
padding: 0 10px;
}
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(function() {
$('a[href*=#]:not([href=#])').click(function() {
if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
if (target.length) {
$('html,body').animate({
scrollTop: target.offset().top
}, 800);
return false;
}
}
});
});
</script>
</head>
<body>
<ul>
<li><a href="#home">home</a></li>
<li><a href="#contact">contact</a></li>
<li><a href="#about">about</a></li>
</ul>
<div id="home" class="section">
<div>
Home Page
</div>
</div>
<div id="contact" class="section">
<div>
Contact page
</div>
</div>
<div id="about" class="section">
<div>
About page
</div>
</div>
</body>
</html>

mohamad_torabi
چهارشنبه 18 تیر 1393, 13:04 عصر
هزار و یک تشکر :لبخندساده:

دانیال دزفولی
یک شنبه 05 مرداد 1393, 23:34 عصر
آموزش خاصی نیاز نیست ساده ترین حالتش به شکل زیر هست.

<!DOCTYPE html>
<html>
<head>
<title>title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style type="text/css">
*{
margin: 0;
padding: 0;
}
body, html{
height: 100%;
}
.section{
min-height: 100%;
}
.section>div{
padding: 10px;
padding-top: 40px;
}
#home{
background: #A2DED0;
}
#contact{
background: #F89406;
}
#about{
background: #6BB9F0;
}
ul{
background: #333;
position: fixed;
height: 30px;
width: 100%;
}
ul li{
display: inline-block;
}
ul li a{
color: #fff;
line-height: 30px;
padding: 0 10px;
}
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(function() {
$('a[href*=#]:not([href=#])').click(function() {
if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
if (target.length) {
$('html,body').animate({
scrollTop: target.offset().top
}, 800);
return false;
}
}
});
});
</script>
</head>
<body>
<ul>
<li><a href="#home">home</a></li>
<li><a href="#contact">contact</a></li>
<li><a href="#about">about</a></li>
</ul>
<div id="home" class="section">
<div>
Home Page
</div>
</div>
<div id="contact" class="section">
<div>
Contact page
</div>
</div>
<div id="about" class="section">
<div>
About page
</div>
</div>
</body>
</html>


با همین کد ها میشه دکمه ی اکتیو رو نشون داد؟

qartalonline
دوشنبه 06 مرداد 1393, 11:07 صبح
با همین کد ها میشه دکمه ی اکتیو رو نشون داد؟

بله میشه. کاملترین حالتش بصورت زیر میشه.

<!DOCTYPE html>
<html>
<head>
<title>title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style type="text/css">
*{
margin: 0;
padding: 0;
}
body, html{
height: 100%;
}
.section{
min-height: 100%;
}
.section>div{
padding: 10px;
padding-top: 40px;
}
#home{
background: #A2DED0;
}
#contact{
background: #F89406;
}
#about{
background: #6BB9F0;
}
ul{
background: #333;
position: fixed;
height: 30px;
width: 100%;
}
ul li{
display: inline-block;
}
ul li a{
color: #fff;
line-height: 30px;
padding: 0 10px;
}
ul li.active a{
background: #993300;
}
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(function() {

$('a[href*=#]:not([href=#])').click(function() {
if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
if (target.length) {
$('html, body').animate({
scrollTop: target.offset().top
}, 800);
return false;
}
}
});

$(window).scroll(function() {
$('.section').each(function() {
if ($(window).scrollTop() >= $(this).offset().top - ($(window).outerHeight() / 2)) {
var id = $(this).attr('id');
$('.menu li').removeClass('active');
$('.menu li a[href=#' + id + ']').parent().addClass('active');
}
});
});

$(window).resize(function() {
$('.menu li').each(function() {
if ($(this).hasClass('active')) {
var id = $(this).children().attr('href');
$('html, body').animate({
scrollTop: $(id).offset().top
}, 50);
return;
}
});
});

});
</script>
</head>
<body>
<ul class="menu">
<li class="active"><a href="#home">home</a></li>
<li><a href="#contact">contact</a></li>
<li><a href="#about">about</a></li>
</ul>
<div id="home" class="section">
<div>
Home Page
</div>
</div>
<div id="contact" class="section">
<div>
Contact page
</div>
</div>
<div id="about" class="section">
<div>
About page
</div>
</div>
</body>
</html>

دانیال دزفولی
دوشنبه 06 مرداد 1393, 12:11 عصر
بله میشه. کاملترین حالتش بصورت زیر میشه.

<!DOCTYPE html>
<html>
<head>
<title>title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style type="text/css">
*{
margin: 0;
padding: 0;
}
body, html{
height: 100%;
}
.section{
min-height: 100%;
}
.section>div{
padding: 10px;
padding-top: 40px;
}
#home{
background: #A2DED0;
}
#contact{
background: #F89406;
}
#about{
background: #6BB9F0;
}
ul{
background: #333;
position: fixed;
height: 30px;
width: 100%;
}
ul li{
display: inline-block;
}
ul li a{
color: #fff;
line-height: 30px;
padding: 0 10px;
}
ul li.active a{
background: #993300;
}
</style>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(function() {

$('a[href*=#]:not([href=#])').click(function() {
if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
var target = $(this.hash);
target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
if (target.length) {
$('html, body').animate({
scrollTop: target.offset().top
}, 800);
return false;
}
}
});

$(window).scroll(function() {
$('.section').each(function() {
if ($(window).scrollTop() >= $(this).offset().top - ($(window).outerHeight() / 2)) {
var id = $(this).attr('id');
$('.menu li').removeClass('active');
$('.menu li a[href=#' + id + ']').parent().addClass('active');
}
});
});

$(window).resize(function() {
$('.menu li').each(function() {
if ($(this).hasClass('active')) {
var id = $(this).children().attr('href');
$('html, body').animate({
scrollTop: $(id).offset().top
}, 50);
return;
}
});
});

});
</script>
</head>
<body>
<ul class="menu">
<li class="active"><a href="#home">home</a></li>
<li><a href="#contact">contact</a></li>
<li><a href="#about">about</a></li>
</ul>
<div id="home" class="section">
<div>
Home Page
</div>
</div>
<div id="contact" class="section">
<div>
Contact page
</div>
</div>
<div id="about" class="section">
<div>
About page
</div>
</div>
</body>
</html>


من برای دکمه ی اکتیو با before کلاس تعریف کردم ولی هنگام اسکرول لرزش داره یعنی همش کلاسه میره و میاد

masoud_pnu
دوشنبه 06 مرداد 1393, 12:21 عصر
دوست عزیزم این پیج مدنظر شما رو باید با بوت استرپ پیاده سازی کنی.اینکه روی دکمه ای کلیک کنی و آروم بره ته صفحه بهش smooth scrolling میکن که کدشو دوستان قرار دادن.ولی اینکه در هر قسمت از صفحه،منوی مربوطه اکتیو بشه رو اصطلاحا scroll spy میگن که یکی از قابلیت های بوت استرپه.خواستی کدشو میذارم.

دانیال دزفولی
دوشنبه 06 مرداد 1393, 12:24 عصر
آقا محمد که لطف کردن گذاشتن
شما هم بذارید ممنون میشیم

masoud_pnu
دوشنبه 06 مرداد 1393, 12:30 عصر
آخه ببین این تو بوت استرپه ها؟
این مال scroll spyکه منوها باهاش تو هر section اکتیو میشن:

<"body data-spy="scroll" data-target=".navbar>

<"ul class="nav navbar-nav>

<li ><a href="#four" class="scroll-link" data-id="page5">تماس با ما</a></li>
<li><a href="#three" class="scroll-link" data-id="page4">خبرها</a></li>
<li><a href="#two" class="scroll-link" data-id="page3">محصولات</a></li>
<li><a href="#one" class="scroll-link" data-id="page2">درباره ما</a></li>
<li><a href="#mainpage" class="scroll-link" data-id="page1">صفحه نخست</a></li>

</ul>


اینم نحوه ایجاد سکشن ها:

<a href="#one" class="scroll-link" data-id="page2"> <section id="rectangle2" style="background-color:rgba(0,0,0,0.2);width:200px;height:280px;dis play:inline-block;">
<img src="images/about.png"/>
<h4>درباره ما</h4>


</section></a>

دانیال دزفولی
دوشنبه 06 مرداد 1393, 12:38 عصر
کدوم فایل های بوت استرپ رو باید لود کنم؟

masoud_pnu
دوشنبه 06 مرداد 1393, 12:53 عصر
ببین فایل های اصلی دیگه.منتها همه .minهارو attach میکنن،من کامل ها رو.شاید نیاز شد!:لبخند:
یه نمونه میذارم براتون،نتیجه کاره.منتها تو کروم باز کنید سایتو.الان آپ میکنم.

masoud_pnu
دوشنبه 06 مرداد 1393, 12:59 عصر
http://www.upvids.vvs.ir/

اینکه اکیتو نمیشن منوها متاسفانه مربوط به هاسته فکرکنم.وگرنه رو هاست اصلی کار میکنه.متاسفانه اجازه ندارم آدرس اصلی رو بذارم

qartalonline
دوشنبه 06 مرداد 1393, 13:09 عصر
من برای دکمه ی اکتیو با before کلاس تعریف کردم ولی هنگام اسکرول لرزش داره یعنی همش کلاسه میره و میاد

یعنی با before: استایل دادید؟ از همین کدها استفاده کردید؟

دانیال دزفولی
دوشنبه 06 مرداد 1393, 13:19 عصر
یعنی با before: استایل دادید؟ از همین کدها استفاده کردید؟

کد ها رو براتون فرستادم