View Full Version : مبتدی: چگونه می توان اسلایدشوی طراحی کرد که دکمه توقف و اجرا داشته باشد
bitcob589
دوشنبه 03 مهر 1391, 19:06 عصر
با سلام
چگونه می توان اسلایدشوی طراحی کردکه تعداد عکسهای و دکمه play و stop و دکمه برگشت به اسلاید قبلی و دکمه نمایش اسلاید بعدی بر روی slideshow داشته باشد
مثل سایت http://www.niazjoo.ir که در صفحه اول اسلاید شوی است که تعداد 5 عکس و دکمه برگشت به اسلاید قبلی و دکمه حرکت به اسلاید بعدی و توقف بر روی اسلایدشو وجود دارد چگونه می توان اسلایدشوی طراحی کرد
mrgraphy
دوشنبه 03 مهر 1391, 20:05 عصر
دوست عزیز طراحی این چیزی که شما میخوایید طراحیش به این سادگی ها نیست و حداقل باید یک سالی توی jquery تجربه درست وحسابی داشته باشید.
اکثر چیزایی که با jquery ساخته میشن به صورت plugin در میان.
شما باید اول خود jquery core رو کاملا بلد باشی تا بعد بتونی به نوشتن plugin هایی مثل این برسی.
موفق بای
Variable
دوشنبه 03 مهر 1391, 22:19 عصر
به سادگی
با یک جستجو تو همین فروم .
bitcob589
دوشنبه 03 مهر 1391, 22:47 عصر
به سادگی
با یک جستجو تو همین فروم .
نمونه ای اسلاید شوی که مثل سایتی که در پست یک معرفی شد معرفی نمایید
Variable
سه شنبه 04 مهر 1391, 00:12 صبح
اینجا رو ببینید (http://barnamenevis.org/showthread.php?351483-%DB%8C%DA%A9-%D8%A7%D8%B3%D9%84%D8%A7%DB%8C%D8%AF-%D8%B4%D9%88-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AE%D9%88%D8%AF%D8%AA%D9%88%D9%86-%D8%A8%D8%B3%D8%A7%D8%B2%DB%8C%D8%AF-...) البته با مرورگر کروم
بعد که تونستی اون کد رو درک کنی . یعدش یه تغییر کوچیک بهش بدی
و چندتا دکمه بزاری زیره عکس هات که حالت اسلاید دارن.
که با زدن هر دکمه یک عدد متناسب با اون عکس به تابع مورد نظر ارسال مبشه . در نتیجه عکس مورد نظر فعال میشه .
خیلی خیلی ساده . متوجه نشدید . کد رو براتون میزارم
bitcob589
سه شنبه 04 مهر 1391, 08:31 صبح
اینجا رو ببینید (http://barnamenevis.org/showthread.php?351483-%DB%8C%DA%A9-%D8%A7%D8%B3%D9%84%D8%A7%DB%8C%D8%AF-%D8%B4%D9%88-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%AE%D9%88%D8%AF%D8%AA%D9%88%D9%86-%D8%A8%D8%B3%D8%A7%D8%B2%DB%8C%D8%AF-...) البته با مرورگر کروم
بعد که تونستی اون کد رو درک کنی . یعدش یه تغییر کوچیک بهش بدی
و چندتا دکمه بزاری زیره عکس هات که حالت اسلاید دارن.
که با زدن هر دکمه یک عدد متناسب با اون عکس به تابع مورد نظر ارسال مبشه . در نتیجه عکس مورد نظر فعال میشه .
خیلی خیلی ساده . متوجه نشدید . کد رو براتون میزارم
اگر امکان دارد کد را بگذارید
Variable
سه شنبه 04 مهر 1391, 13:33 عصر
خیلی سادست . بدون استفاده از جیکوئری . کد و تصاویرش هم ضمیمه کردم
<html>
<head>
</head>
<style type="text/css">
ul{
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
-ms-transition: all 1s ease-in-out;
width:1000px;
padding:0;
margin-top:0;
}
li{
list-style: none;
float:left;
}
.myDiv{
border:1px solid black;
overflow: hidden;
width:150px;
padding:0;
}
#setButton{
margin-top: -25px;
}
.nav{
border-style: none;
border-radius: 10px;
background-color: #45abff;
cursor: pointer;
color: #fff;
}
</style>
<body>
<div class="myDiv">
<ul id="myUl">
<li><img src="pic/2.jpg"></li>
<li><img src="pic/3.jpg"></li>
<li><img src="pic/4.jpg"></li>
<li><img src="pic/5.jpg"></li>
<li><img src="pic/1.jpg"></li>
</ul>
</div>
<div id="setButton">
<button id="0" class="nav">1</button>
<button id="1" class="nav">2</button>
<button id="2" class="nav">3</button>
<button id="3" class="nav">4</button>
<button id="4" class="nav">5</button>
</div>
<script type="text/javascript">
(function(){
var listWidth=150,i=0;
var uls=document.getElementById('myUl'),
style=document.getElementById('myUl').style;
var sBtn=document.getElementById('setButton');
sBtn.addEventListener('click',function(e){
nextFunc(e.target.id);
},false);
function nextFunc(j){
style.marginLeft=(listWidth*(-j));
i=j;
}
var nextInt=setInterval(function(){
if(i<4){
i++;
}
else{
i=0;
}
nextFunc(i);
},4000);
})();
</script>
</body>
</html>
93240
bitcob589
سه شنبه 04 مهر 1391, 14:02 عصر
خیلی سادست . بدون استفاده از جیکوئری . کد و تصاویرش هم ضمیمه کردم
<html>
<head>
</head>
<style type="text/css">
ul{
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
-ms-transition: all 1s ease-in-out;
width:1000px;
padding:0;
margin-top:0;
}
li{
list-style: none;
float:left;
}
.myDiv{
border:1px solid black;
overflow: hidden;
width:150px;
padding:0;
}
#setButton{
margin-top: -25px;
}
.nav{
border-style: none;
border-radius: 10px;
background-color: #45abff;
cursor: pointer;
color: #fff;
}
</style>
<body>
<div class="myDiv">
<ul id="myUl">
<li><img src="pic/2.jpg"></li>
<li><img src="pic/3.jpg"></li>
<li><img src="pic/4.jpg"></li>
<li><img src="pic/5.jpg"></li>
<li><img src="pic/1.jpg"></li>
</ul>
</div>
<div id="setButton">
<button id="0" class="nav">1</button>
<button id="1" class="nav">2</button>
<button id="2" class="nav">3</button>
<button id="3" class="nav">4</button>
<button id="4" class="nav">5</button>
</div>
<script type="text/javascript">
(function(){
var listWidth=150,i=0;
var uls=document.getElementById('myUl'),
style=document.getElementById('myUl').style;
var sBtn=document.getElementById('setButton');
sBtn.addEventListener('click',function(e){
nextFunc(e.target.id);
},false);
function nextFunc(j){
style.marginLeft=(listWidth*(-j));
i=j;
}
var nextInt=setInterval(function(){
if(i<4){
i++;
}
else{
i=0;
}
nextFunc(i);
},4000);
})();
</script>
</body>
</html>
93240
اسلاید شو بر روی مرورگر IE کار نمی کند (تصاویر عوض نمی شوند و زمانی که بر روی شمارهای که بر روی اسلایدر کلیک می شود اسلایدر عوض نمی شوند )
آیا این امکان وجود دارد بر روی اسلایدر دکمه توقف و اجرا بر روی اسلایدر گذاشته شود
Variable
سه شنبه 04 مهر 1391, 15:45 عصر
دوتا دکمه هم گذاشتم
من خیلی وقته از IE استفاده میکنم . ولی یه همچین سبکی داره.
میتونی معادل این دستورات تو IE رو پیدا کنی تو کد بزاری
<html>
<head>
</head>
<style type="text/css">
ul{
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
-ms-transition: all 1s ease-in-out;
width:1000px;
padding:0;
margin-top:0;
}
li{
list-style: none;
float:left;
}
.myDiv{
border:1px solid black;
overflow: hidden;
width:150px;
padding:0;
}
#setButton{
margin-top: -25px;
}
.nav{
border-style: none;
border-radius: 10px;
margin-right: 10px;
background-color: #45abff;
cursor: pointer;
color: #fff;
}
</style>
<body>
<div class="myDiv">
<ul id="myUl">
<li><img src="pic/2.jpg"></li>
<li><img src="pic/3.jpg"></li>
<li><img src="pic/4.jpg"></li>
<li><img src="pic/5.jpg"></li>
<li><img src="pic/1.jpg"></li>
</ul>
</div>
<div id="setButton">
<button id="0" class="nav">1</button>
<button id="1" class="nav">2</button>
<button id="2" class="nav">3</button>
<button id="3" class="nav">4</button>
<button id="4" class="nav">5</button>
</div>
<div id="setButton2">
<button id="stop" class="nav">stop</button>
<button id="play" class="nav">play</button>
</div>
<script type="text/javascript">
(function(){
var listWidth=150,i=0;
var uls=document.getElementById('myUl'),
style=document.getElementById('myUl').style;
var sBtn=document.getElementById('setButton');
var sBtn2=document.getElementById('setButton2');
var nextInt=window.setInterval(function(){
if(i<4){
i++;
}
else{
i=0;
}
nextFunc(i);
},4000);
nextInt*=1;
function nextFunc(j){
style.marginLeft=(listWidth*(-j));
i=j;
}
if(document.addEventListener)
{
sBtn2.addEventListener('click',function(e){
if(e.target.id=="stop"){
clearInterval(nextInt);
}
else if(e.target.id=="play"){
nextInt=setInterval(function(){
if(i<4){
i++;
}
else{
i=0;
}
nextFunc(i);
},4000);
}
});
sBtn.addEventListener('click',function(e){
nextFunc(e.target.id);
},false);
}
else if(document.attachEvent){
sBtn2.attachEvent('onclick',function(e){
if(e.srcElement.id=="stop"){
clearInterval(nextInt);
}
else if(e.srcElement.id=="play"){
nextInt=setInterval(function(){
if(i<4){
i++;
}
else{
i=0;
}
nextFunc(i);
},4000);
nextInt*=1;
}
});
sBtn.attachEvent('onclick',function(e){
nextFunc(e.srcElement.id);
},false);
}
})();
</script>
</body>
</html>
bitcob589
سه شنبه 04 مهر 1391, 17:46 عصر
دوتا دکمه هم گذاشتم
من خیلی وقته از IE استفاده میکنم . ولی یه همچین سبکی داره.
میتونی معادل این دستورات تو IE رو پیدا کنی تو کد بزاری
<html>
<head>
</head>
<style type="text/css">
ul{
-webkit-transition: all 1s ease-in-out;
-moz-transition: all 1s ease-in-out;
-o-transition: all 1s ease-in-out;
-ms-transition: all 1s ease-in-out;
width:1000px;
padding:0;
margin-top:0;
}
li{
list-style: none;
float:left;
}
.myDiv{
border:1px solid black;
overflow: hidden;
width:150px;
padding:0;
}
#setButton{
margin-top: -25px;
}
.nav{
border-style: none;
border-radius: 10px;
margin-right: 10px;
background-color: #45abff;
cursor: pointer;
color: #fff;
}
</style>
<body>
<div class="myDiv">
<ul id="myUl">
<li><img src="pic/2.jpg"></li>
<li><img src="pic/3.jpg"></li>
<li><img src="pic/4.jpg"></li>
<li><img src="pic/5.jpg"></li>
<li><img src="pic/1.jpg"></li>
</ul>
</div>
<div id="setButton">
<button id="0" class="nav">1</button>
<button id="1" class="nav">2</button>
<button id="2" class="nav">3</button>
<button id="3" class="nav">4</button>
<button id="4" class="nav">5</button>
</div>
<div id="setButton2">
<button id="stop" class="nav">stop</button>
<button id="play" class="nav">play</button>
</div>
<script type="text/javascript">
(function(){
var listWidth=150,i=0;
var uls=document.getElementById('myUl'),
style=document.getElementById('myUl').style;
var sBtn=document.getElementById('setButton');
var sBtn2=document.getElementById('setButton2');
var nextInt=setInterval(function(){
if(i<4){
i++;
}
else{
i=0;
}
nextFunc(i);
},4000);
function nextFunc(j){
style.marginLeft=(listWidth*(-j));
i=j;
}
if(document.addEventListener)
{
sBtn2.addEventListener('click',function(e){
if(e.target.id=="stop"){
clearInterval(nextInt);
console.log(e);
}
else if(e.target.id=="play"){
nextInt=setInterval(function(){
if(i<4){
i++;
}
else{
i=0;
}
nextFunc(i);
},4000);
}
});
sBtn.addEventListener('click',function(e){
nextFunc(e.target.id);
},false);
}else if(document.attachEvent){
sBtn2.attachEvent('click',function(e){
if(e.target.id=="stop"){
clearInterval(nextInt);
console.log(e);
}
else if(e.target.id=="play"){
nextInt=setInterval(function(){
if(i<4){
i++;
}
else{
i=0;
}
nextFunc(i);
},4000);
}
});
sBtn.attachEvent('click',function(e){
nextFunc(e.target.id);
},false);
}
})();
</script>
</body>
</html>
کد بالا را IE گذاشته شد دکمه ها که گذاشته شده بود هیچ تاثیری بر توقف و اجرا اسلاید نداشتند و شمارهای بر روی اسلایدر گذاشته شده بود با کلیک بر روی شماره عکس ,عکس مورد نظر نمایش داده نمی شود
در کد بالا تعداد4 عکس تعریف شده است با توجه به مشخص نبودن تعداد عکسها در اسلایدر چگونه با افزایش تعداد عکس عکسها را به صورت صحیح نمایش بدهیم
کد بالا در مرورگر کروم کار نمی کند چگونه می توان اسلایدشو را در تمام مرورگرها اجرا کرد
Variable
سه شنبه 04 مهر 1391, 22:30 عصر
کد قبلی ویرایش شد .
تو کروم این کد درست کار میکنه . تو IE هم فقط ترانزیشن نداره .
که مربوط به پشتیبانی نکردنش از css3 میشه .
به هرحال امیدوارم یه مثال و نمونه براتون بوده باشه .
یا علی برادر یا علی
mrgraphy
سه شنبه 04 مهر 1391, 23:36 عصر
دوستان چرا لقمه رو دور سر خودتون میچرخونید
طراحی اسلاید شو و تعریف effect برای اون کار ساده ای نیست و باید مهارت خاصی تو javascript یا jquery داشته باشید.
تا به مشکل بر نخورید.
بهتره کورس طراحی اسلاید شو رو تو گوگل جستجو کنید متوجه میشید که حتی برای طراحی همین اسلاید شو هایی که میبینید چندتا برنامه نویس اول میشینن طرح میریزن بعد شروع میکنن به طراحی و تست.
کار هر بز نیست خرمن کوفتن گاو نر میخواهد و مرد کهن
Variable
چهارشنبه 05 مهر 1391, 23:39 عصر
پیشاپیش معذرت میخام ( چون نباید بیخود وارد بحثای حاشیه ایی بشیم .فقط ذکر یه نکته .لطفا با راهنمایی های غلط ذهن دوستان رو منحرف نکنید .
)
دوست من اتفاقا اون چیزی که دوستمون خاستن کار ساده ایی .
نیاز نیست شما خدای جی کوئری باشی تا بتونی .
در ضمن من اینرو فقط با جی اس نوشتم که مثالی برای دوستمون باشه که فکر نکنه ساختن یه همچین چیزی محال است . و آشنا بشه . ولی حیف که اکثرا دنباله یه چیز آماده هستیم .
با جیکوئری خیلی ساده تر میشه ساخت.
ولی بحث اصلی و مهم در پیاده سازیه هرچیزی. پیدا کردن الگوریتمه اون هست. وسلام .
چی اسمبلی چه جی کوئری... فقط الگوریتم.
ممنونم..
mrgraphy
پنج شنبه 06 مهر 1391, 00:07 صبح
بشتگی داره تا به چه چیزی بگید اسلاید شو.
یه div که هر چند ثانیه یه بار چهارتا عکس توش جابه جا میشه یا نه یک چیزی مثل nivo slider با کلی امکانات.
علت اصلی عدم پیشرفت ایرانی ها همینه که فقط تا نوک بینیشونو میبینند مثل بعضی از دوستان در این تاپیک.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.