ورود

View Full Version : سوال: دریافت نام استان با کلیک بر روی نقشه SVG



bftarane
دوشنبه 06 آذر 1396, 15:04 عصر
سلام

لطفا این لینک رو ببینید

نقشه ایران SVG (http://barnamenevis.org/showthread.php?447455-%D8%AF%D8%A7%D9%86%D9%84%D9%88%D8%AF-%D9%86%D9%82%D8%B4%D9%87-%D8%A7%DB%8C%D8%B1%D8%A7%D9%86-%D8%A8%D8%A7-%D9%81%D8%B1%D9%85%D8%AA-SVG-%D9%88-%D8%A8%D8%B5%D9%88%D8%B1%D8%AA-%D8%B1%DB%8C%D8%B3%D9%BE%D8%A7%D9%86%D8%B3%DB%8C%D 9%88)

در پست 2 اشاره شده که در
همچنین در پست 6 اشاره شده که دو رویداد کلیک به ورژن 1.1.0 اضافه شده.

دو تا تابع در این رابطه قرار داده شده که با کلیک بر روی استانها (چه بر روی لیست چه بر روی نقشه) اون تابع نام استان رو به شما تحویل میده

من ورژن 1.1.0 رو دانلود کردم ولی رویداد کلیکی نمی بینم یا اصلا رویداد دیگه ای که نام استان رو برگشت بده.

ممنون میشم راهنمایی کنید.

anvar
جمعه 17 آذر 1396, 20:47 عصر
رویداد کلیکی اصلا نداره - فقط برای هندل کردن رویداد Hover موس بر روی لیست استان ها و همچنین خود نقشه (یا Path) توابعی تعریف شدن

اگر شما نیاز دارید تا با کلیک بر روی یک استان خاص نام استان رو بگیرید - می تونید بدو صورت عمل کنید

1 - از آنجا که Path هر استان دارای یک کلاس با نام همان استان است م یتونید از همین کلاس برای تشخیص استان کلیک شده استفاده کنید

یا
2 - به هر کدام از Path ها یک خاصیت جدید مثلا با نام data-name اضافه کنید و برای هر استان نام آنرا بنویسید مثلا برای استان البرز میشه
data-name="البرز" , .....

حالا باید رویداد کلیک path استان ها رو با کدهای جاوااسکریپت هندل کنید و کار مورد نظر خودتون با نام استان رو انجام بدید مثلا

$('#IranMap svg g path').click(function() {
var ProvinceName = $(this).attr('data-name');
alert(ProvinceName);
});

در کد بالا با کلیک بر روی هر استان در نقشه نام استان از خاصیت data-name آن گرفته می شود و بصورت alert به کاربر نمایش داده می شود