::: در حال بارگیری لطفا صبر کنید :::Loading , please wait ...

انجمن کدستانMoisrex

MoisrexMoisrex.rozblog.com
زمان جاریtime : شنبه 16 تیر 1403 - 8:57 بعد از ظهر
نام کاربریusername : پسوردpassword : یاor عضویتregister | رمز عبور را فراموش کردمForgot your password?
شما در سایت ما ثبت نام نکرده اید و یا وارد اکانت کاربری خود نشده اید. از شما خواهشمند هستیم You are not log in to site. Please وارد شویدlogin یاor ثبت نام کنیدregister .
مشکلی در کد جاوا اسکریپت
تعداد بازدیدvisits : 1856
amdanial آفلاین



ارسال هاAnswers : 198
عضویتRegistration date : 13 /10 /1391
حمایت کردهThanks : 85
حمایت شدهThanked : 112
مشکلی در کد جاوا اسکریپت

سلام دوستان خسته نباشید

زود برم سر اصل مطلب!

آقا من این مشکل رو یه بار دیگه مطرح کردم یه چنتا جواب گرفتم و رفتم به کد یه ذره ور رفتم ولی بازم چیزی دستگیرم نشد (ولی از حق نگذریم چیزای جدید تری یادگرفتم) حالا اومدم و دوباره این کد رو می زارم ! تو رو خدا با فریم ورک کار رو نزنین هر کی می تونه با همین جاوا اسکریپت مشکل رو حل کنه! مشکل هم از جاییه که می خوام یه دسته از المنت های داخل یه تگ رو بگیره و به onclick شون یه خاصیتی اضافه کنه که اگر روی هر کدوم از اون دسته کلیک شد یه کلاس بهش اضافه بشه و اگر روی المنت های بعدیش کلیک شد خاصیت سی اس اس از قبلی گرفته بشه و به بعدی داده بشه لطفا کمک کنید ممنون

کد:

<nav id="topNav"> <ul id="menu"> <li><a href="#">صفحه نخست</a></li> <li><a href="#">بخش ویژه</a></li> <li><a href="#">فروشگاه</a></li> <li><a href="#">تبلیغات</a></li> <li><a href="#">تماس با ما</a></li> </ul> </nav>

<script>document.documentElement.onload = menuSelect();function menuSelect(){ for(i=0;i<navbar.length;i++){ x = document.getElementById('menu').getElementsByTagName('li').item(i); } x.addEventListener('click',changeColor); function changeColor(){ x.setAttribute('class','currentNav'); }}

</script>


تو خیال کردی بری, دلم برات تنگ می شه

نمی دونستی دلم, به سختی سنگ می شه

فک نکردی می تونم, تو رو فراموش کنم

مثه بادی بوزم, شعلت خاموش کنم
سه شنبه 16 دی 1393 - 01:15
وب کاربرUser's blog ارسال پیامsend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
smaeal آفلاین



ارسال‌هاAsnwers : 10648
عضویتRegistration date : 18 /11 /1392
حمایت کردهthanks : 18906
حمایت شدهThanked : 5424
پاسخAnswer 1 : مشکلی در کد جاوا اسکریپت

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

کارش هم اینطوریه که وقتی روی یکی از اجزای لیست کلیک میکنی کلاس active رو بهش اضافه میکنه،این کلاس هم مقدارش اینه : margin-left:20px

حالا خودت میتونی به جاش هرچی که میخوای بزاری...

بفرما:

کد:
<style>

.active{

margin-left:20px;

}

</style>

<nav id="topNav">

<ul id="menu">

<ul>

<li class="activeList" onclick="ShowThis(this);">صفحه نخست</li>

<li onclick="ShowThis(this);">انجمن</li>

<li onclick="ShowThis(this);">عضویت</li>

<li onclick="ShowThis(this);">ورود</li>

</ul>

</nav>

<script>

function ShowThis(li){

var classname='active',

parent=document.getElementById('menu'),

active=parent.getElementsByClassName(classname)[0];

active.className='';

li.className=classname;

}

</script>


===================================================
برای تشکر از دکمه « سپاسگزارم » استفاده نمایید
سه شنبه 16 دی 1393 - 08:04
وب کاربرUser's blog ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
حمایت شده حمایت شده: سپاس هاThanks (1) : amdanial -
masterhk آفلاین



ارسال‌هاAsnwers : 378
عضویتRegistration date : 22 /4 /1394
حمایت کردهthanks : 254
حمایت شدهThanked : 519
پاسخAnswer 2 : مشکلی در کد جاوا اسکریپت

کد:
var myNodeList = document.querySelectorAll("#topNav #menu li a"), // or document.getElementById('menu').getElementsByTagName('li')[0...length].getElementsByTagName('a')classToggler = function(event) { myNodeList.forEach(function(Row, Index) { Row.classList.remove('currentNav') }); event.target.classList.add('currentNav')};myNodeList.__proto__ = Array(); // convert NodeList to arrayfor(var Index in myNodeList){ Row = myNodeList[Index]; Row.onclick = classToggler}

این شیوه ابداعی از خودمه که اتفاقا اونروز داشتم آموزششو تایپ میکردم که برق رفت... :|

امروز قسمت شد... :دی

کلا با ویژگی __proto__ هرچیز میشه نوع اون رو تغییر داد.

این به این معنیه که این {} خالی نیست؛ بلکه

کد:
{__proto__:null}

این خالیه...

یعنی اگه متغیری با این مقدار بسازی؛ توی کنسول که بعدش نقطه بزنی؛ هیچی نمیاد!

شما حتی اگه یه true یا false یا null هم بریزی تو یه متغیر؛ باز اون یه مقدار و کلاس و property هایی داره؛ اما این نه...

حالا ما میتونیم با این شیوه هرچیزی رو به آرایه تبدیل کنیم و از متدهای آرایه مثل join, push, shift, unshift, pop از همه باحالتر map, forEach و... داخلش استفاده کنیم.

حالا اگه به موارد استفاده ش برسین میبینین چقدر به درد میخوره... :دی

با اجازه...

نه وایسین یه لحظه... :دی

متد querySelectorAll چون مال html5 ـه ممکنه هرجایی ساپورت نشه؛ شما عادی تر کدتونو بنویسن... :دی

و همینطور classList (که نمیدونم یهو از کجا سر در آورده... :دی)

سه شنبه 16 دی 1393 - 08:40
ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
حمایت شده حمایت شده: سپاس هاThanks (3) : smaeal - amdanial - farnam -
masterhk آفلاین



ارسال‌هاAsnwers : 378
عضویتRegistration date : 22 /4 /1394
حمایت کردهthanks : 254
حمایت شدهThanked : 519
پاسخAnswer 3 : مشکلی در کد جاوا اسکریپت

کد رو دوباره پست میکنم چون رزبلاگ کلا با کد های من مشکل داره... :|

کد:
var myNodeList = document.querySelectorAll("#topNav #menu li a"), classToggler = function(event) { myNodeList.forEach(function(Row, Index) { Row.classList.remove('currentNav') }); event.target.classList.add('currentNav')};myNodeList.__proto__ = Array();for(var Index in myNodeList){ Row = myNodeList[Index]; Row.onclick = classToggler}

سه شنبه 16 دی 1393 - 08:43
ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
حمایت شده حمایت شده: سپاس هاThanks (2) : smaeal - amdanial -
smaeal آفلاین



ارسال‌هاAsnwers : 10648
عضویتRegistration date : 18 /11 /1392
حمایت کردهthanks : 18906
حمایت شدهThanked : 5424
پاسخAnswer 4 : مشکلی در کد جاوا اسکریپت

جان من پاسخ قبلیتو فهمیدی چی بود..

یکم واضحتر بگو خب...


===================================================
برای تشکر از دکمه « سپاسگزارم » استفاده نمایید
سه شنبه 16 دی 1393 - 08:48
وب کاربرUser's blog ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
حمایت شده حمایت شده: سپاس هاThanks (1) : amdanial -
amdanial آفلاین



ارسال‌هاAsnwers : 198
عضویتRegistration date : 13 /10 /1391
حمایت کردهthanks : 85
حمایت شدهThanked : 112
پاسخAnswer 5 : مشکلی در کد جاوا اسکریپت

از همگی دوستان سپاس گذارم اما در کمال تاسف باید گفت که کد ها مشکل دارن و کاری که باید رو انجام نمیدن

کد داداش اسماعیل که کلا کار نمی کرد ولی مال استاد کیان اون خاصییت ها رو به جای li به تگ داخل li یعنی a میداد

باید یه فکر دیگه براش بردارم که هم خودش به تعداد اونا یه آی دی بده و بعد هم به تک تک آی دی ها اون خاصیتی که می خوام رو بده و بقیه رو منع کنه خودمم نفهمیدم چی گفتم ولی می نویسمش


تو خیال کردی بری, دلم برات تنگ می شه

نمی دونستی دلم, به سختی سنگ می شه

فک نکردی می تونم, تو رو فراموش کنم

مثه بادی بوزم, شعلت خاموش کنم
سه شنبه 16 دی 1393 - 11:57
وب کاربرUser's blog ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
amdanial آفلاین



ارسال‌هاAsnwers : 198
عضویتRegistration date : 13 /10 /1391
حمایت کردهthanks : 85
حمایت شدهThanked : 112
پاسخAnswer 6 : مشکلی در کد جاوا اسکریپت

دوستان مشکل این کد کجاشه؟ من توضیح میدم کد چه کار می کنه شما بگین مشکلش کجاس

الان این کد پایین به تمام li های داخل ul یه آی دی اختصاص میده از attr0 تا هر چند ها که li داخلش وجود داشته باشه

کد:

var x = document.getElementById("menu").getElementsByTagName('li'); var text=""; rene=""; for(i=0;i<x.length;i++){ text += x.item(i).setAttribute('id','attr'+i); }

بعد از این کد هم اینو اضافه کردم حالا این چی کار می کنه؟ این همه ی آی دی ها رو قرار بگیره و داخل متغیر x بریزه و بعد من به x یه add event listener دادم که اگر روش کلیک بشه تابع colorChange() اجرا بشه! از نظر من این کد مشکلی نداره ولی همش تو کنسول کروم قرمز می نویسه کد ها رو و ارور میگیره :|

کد:
x="";for(i=0;i<x.length;i++){ x += document.getElementById('attr'+i); } x.addEventListener('click',colorChange); function colorChange(){ }


تو خیال کردی بری, دلم برات تنگ می شه

نمی دونستی دلم, به سختی سنگ می شه

فک نکردی می تونم, تو رو فراموش کنم

مثه بادی بوزم, شعلت خاموش کنم
سه شنبه 16 دی 1393 - 13:05
وب کاربرUser's blog ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
smaeal آفلاین



ارسال‌هاAsnwers : 10648
عضویتRegistration date : 18 /11 /1392
حمایت کردهthanks : 18906
حمایت شدهThanked : 5424
پاسخAnswer 7 : مشکلی در کد جاوا اسکریپت

داداش شرمنده...یه جاییشو اشتباه گذاشته بودم...خیلی هم ساده است...الآن دمو رو بزن:

کد:

<style>

.active{

margin-left:20px;

}

</style>

<nav id="topNav">

<ul id="menu">

<ul>

<li class="active" onclick="ShowThis(this);">صفحه نخست</li>

<li onclick="ShowThis(this);">انجمن</li>

<li onclick="ShowThis(this);">عضویت</li>

<li onclick="ShowThis(this);">ورود</li>

</ul>

</nav>

<script>

function ShowThis(li){

var classname='active',

parent=document.getElementById('menu'),

active=parent.getElementsByClassName(classname)[0];

active.className='';

li.className=classname;

}

</script>


===================================================
برای تشکر از دکمه « سپاسگزارم » استفاده نمایید
سه شنبه 16 دی 1393 - 13:11
وب کاربرUser's blog ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
حمایت شده حمایت شده: سپاس هاThanks (2) : amdanial - farnam -
amdanial آفلاین



ارسال‌هاAsnwers : 198
عضویتRegistration date : 13 /10 /1391
حمایت کردهthanks : 85
حمایت شدهThanked : 112
پاسخAnswer 8 : مشکلی در کد جاوا اسکریپت

دشمنت شرمنده داداش اسماعیل فقط کدی خودم بالا گذاشتمم یه نگاه بنداز ببین اشکالش چیه لطفا


تو خیال کردی بری, دلم برات تنگ می شه

نمی دونستی دلم, به سختی سنگ می شه

فک نکردی می تونم, تو رو فراموش کنم

مثه بادی بوزم, شعلت خاموش کنم
سه شنبه 16 دی 1393 - 13:14
وب کاربرUser's blog ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
smaeal آفلاین



ارسال‌هاAsnwers : 10648
عضویتRegistration date : 18 /11 /1392
حمایت کردهthanks : 18906
حمایت شدهThanked : 5424
پاسخAnswer 9 : مشکلی در کد جاوا اسکریپت

داداش من از کد تو سر در نمیارم...احساس خرم بهم میگه اشتباهه...


===================================================
برای تشکر از دکمه « سپاسگزارم » استفاده نمایید
سه شنبه 16 دی 1393 - 13:20
وب کاربرUser's blog ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
حمایت شده حمایت شده: سپاس هاThanks (1) : amdanial -
amdanial آفلاین



ارسال‌هاAsnwers : 198
عضویتRegistration date : 13 /10 /1391
حمایت کردهthanks : 85
حمایت شدهThanked : 112
پاسخAnswer 10 : مشکلی در کد جاوا اسکریپت

خب پس بسیار هم عالی من هم همینجا میشینم تا محمد بیاد حرفتو تایید کنه


تو خیال کردی بری, دلم برات تنگ می شه

نمی دونستی دلم, به سختی سنگ می شه

فک نکردی می تونم, تو رو فراموش کنم

مثه بادی بوزم, شعلت خاموش کنم
سه شنبه 16 دی 1393 - 13:21
وب کاربرUser's blog ارسال پیامSend p.m. نقل قولReply سپاس گزارمThanks گزارشReport
حمایت شده حمایت شده: سپاس هاThanks (1) : smaeal -



moisrex
درباره ماAbout us لینک های ماOur links کلمات کلیدیKeywords
انجمن تخصصی کدستان ، ساخته شده توسط فردی با نام مستعار Moisrex می باشد.This forum designed by a person who called Moisrex.

ایمیلE-mail : Moisrex @ Gmail.com
کدستان,انجمن کدستان,کدنویسی,انجمن پشتیبانی,فروم,رزبلاگ,آموزش کدنویسی,درخواست کد
تمامی حقوق این انجمن مربوط به همین انجمن می باشد | طراحی قالبCopyright (c) By Moisrex , All rights reserved | Desiger : Moisrex