PDA

View Full Version : حرفه ای: تغییر Direction نسبت به زبان متن درحال تایپ



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");
}

});

امیدوارم مفید بوده باشه ...