hakan648
سه شنبه 02 اسفند 1390, 23:40 عصر
سلام
حتما مشاهده کردید که هنگام تایپ کردن متن فارسی در گوگل , Direction بصورت rtl و موقع تایپ انگلیسی بصورت ltr میشه .
همونطوری که میدونید حروف فارسی جزو کرکترهای یونیکد حساب میشن و به همین وسیله میتونیم بفهمیم که متن در حال تایپ فارسی هست یا نه !؟
برنامه بوسیله یک Regular در رویداد keyup المنت input چک میکنه که آیا اولین کرکتر یونیکد هست یا نه و نسبت به همین Css رو تغییر میده .
اینم کد :
$('input').keyup(function () {
$this = $(this);
var x = new RegExp("[\x00-\x80]+"); // is ascii
var isAscii = x.test($this.val().substr(0, 1));
if (isAscii) {
$this.css("direction", "ltr");
}
else {
$this.css("direction", "rtl");
}
});
امیدوارم مفید بوده باشه ...
حتما مشاهده کردید که هنگام تایپ کردن متن فارسی در گوگل , Direction بصورت rtl و موقع تایپ انگلیسی بصورت ltr میشه .
همونطوری که میدونید حروف فارسی جزو کرکترهای یونیکد حساب میشن و به همین وسیله میتونیم بفهمیم که متن در حال تایپ فارسی هست یا نه !؟
برنامه بوسیله یک Regular در رویداد keyup المنت input چک میکنه که آیا اولین کرکتر یونیکد هست یا نه و نسبت به همین Css رو تغییر میده .
اینم کد :
$('input').keyup(function () {
$this = $(this);
var x = new RegExp("[\x00-\x80]+"); // is ascii
var isAscii = x.test($this.val().substr(0, 1));
if (isAscii) {
$this.css("direction", "ltr");
}
else {
$this.css("direction", "rtl");
}
});
امیدوارم مفید بوده باشه ...