PDA

View Full Version : تنظیم tabindex برای اجزای خاص



sara333
شنبه 04 دی 1389, 09:07 صبح
سلام
درتنظیم tabindex برای اجزای صفحاتم دچار مشکل شدم اگر بتونید راهنمایی کنید ممنون میشم . من tabindex رو برای اجزای صفحه مثل txtfiled ها و دکمه ها تعریف کردم اما موقع اجرا ، اشاره گر روی صفحه browser هم میره و من نمیخام که این اتفاق بیفته . یعنی میخام وقتی که یکبار تمام اجزای فرمم رو طی کرد دوباره روی اولین قسمت برگرده و به address bar و ..... دیگه نره .
اگر راهنمایی کنید ممنون میشم.

parselearn
شنبه 04 دی 1389, 09:19 صبح
خب نميشه. يعني دست ما نيست
اين وابسته به طراحي مرورگر هست.

sara333
شنبه 04 دی 1389, 09:48 صبح
یعنی نمیشه کاری کرد که این ترتیب tabindex هامون بیفته داخل loop؟

mtchabok
شنبه 04 دی 1389, 09:54 صبح
سلام
فک کنم که با جاوا اسکریپت بشه ... البته من کدش رو بلد نیستم و فقط می تونم به صورت تئوری توضیح بدم .
به این صورت که روی آخرین فیلدی که tabindex داره ، اونو با استفاده از جاوا اسکریپت حساس بکنی به دکمه Tab .
خوب اگه دوستان دیگه کدش رو بلدن بیان بگن . من فقط می دونم که به این صورت میشه .

parselearn
شنبه 04 دی 1389, 10:35 صبح
من همچين چيزي نوشتم. اما به هر حال خارج ميشه


<body onload="document.form1.q0.focus()">
<form id="form1" name="form1" method="post" action="">
<input type="text" value="1" name="q0" tabindex="0" onblur="document.form1.q1.focus()" />
<br />
<input type="text" value="2" name="q1" tabindex="1" onblur="document.form1.q2.focus()" />
<br />
<input type="text" value="3" name="q2" tabindex="2" onblur="document.form1.q0.focus()" />
<br />
</form>
</body>

parselearn
شنبه 04 دی 1389, 10:54 صبح
اينم هست. براي enter خوب جواب ميده. اما تب نه
كد enter=13



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
<script>

function testing(event,number)
{
if( event.keyCode == 9 )
{
var wow = document.getElementById(number);
wow.focus();
}
}

</script>

</head>

<body onload="document.form1.q0.focus()">

<form>
<input id="1" type="text" tabindex="1" onkeyup="testing(event,2);" />
<input id="2" type="text" tabindex="2" onkeyup="testing(event,3);" />
<input id="3" type="text" tabindex="3" onkeyup="testing(event,1);" />
</form>
</body>
</html>

sara333
شنبه 04 دی 1389, 14:16 عصر
ممنون
پس اینطور که به نظر میرسه راهی نیست و من باید بعد از اینکه یکبار روی option های صفحم رفتم ، برم بیرون صفحه و با tab کل گزینه های مرورگرم رو طی کنم تا دوباره به اولین optionام برسم .
راستی یه چیز دیگه آیا برای تعیین tabindex حتما باید اولین شماره از 1 شروع بشه ؟ یا از 0 ؟ (یا اینکه از هر عددی میشه شروع کرد با این شرط که صعودی بودن اعداد رو رعایت کینم؟) و من یه جایی هم دیدم که نوشته بود tabindex=-1 ؟ این یعنی چی!!!

parselearn
شنبه 04 دی 1389, 17:01 عصر
tabindex فرقي ندارد از 0 شروع شود يا 1 چون مرورگر به صورت صعودي شي ها را طي ميكند.
به هر حال ما بايد از تمام اعداد استفاده كنيم. پس از 0 شروع خواهد شد

هنگامي كه tabindex را برابر -1 قرار دهيم ديگر با كليد تب فوكوس نميگيرد

sara333
دوشنبه 06 دی 1389, 14:05 عصر
سلام
ببخشید یه مشکل جدیدی که من در این رابطه خوردم اینه که آمدم برای combo و textfild ها و کلا اجزای صفحه tabindex از عدد 1 و به ترتیب تعریف کردم . حالا مشکل اینجاست که 2 تا تب رو که رد میکنه وسط کار یکدفعه میره روی browser ! و اونا رو رد میکنه و بعد میاد روی ادامه اجزای فرمم !!! حالا میخواد بره تمام broewser رو بگرده ، خوب بره ! ولی حداقل وسط کار من یکدفعه نپره بیرون فرم ! من اعدادشو به ترتیب دادم نمیدونم چشه که اینجوری داره اذیت میکنه !!!!
میتونید یه راهنمایی یا کمکی کنید؟