সংক্ষেপে
$(document.getElementById("test:abc")) আপনার ব্যবহার করা উচিত কি।
ব্যাখ্যা : গতি বৃদ্ধি ছাড়াও (আরও নীচে দেখুন), এটি পরিচালনা করা সহজ।
উদাহরণ: বলুন আপনার একটি ফাংশন আছে
function doStuff(id){
var jEle = $("#" + id); //is not safe, since id might be "foo:bar:baz" and thus fail.
//You would first have to look for ":" in the id string, then replace it
var jEle = $(document.getElementById(id)); //forget about the fact
//that the id string might contain ':', this always works
}
//just to give an idea that the ID might be coming from somewhere unkown
var retrievedId = $("foo").attr("data-target-id");
doStuff(retrievedId);
গতি / সময়
এই জেসবিনটি দেখুন যা আইডির নির্বাচনের পদ্ধতির গতি এবং কলোনগুলির সাথে তুলনা করে
ফলাফল পেতে আপনার ফায়ারব্যাগ কনসোলটি খুলতে হবে।
আমি এটি ফায়ারফক্স 10 এবং jquery 1.7.2 দিয়ে পরীক্ষা করেছি
মূলত আমি আইডিটিতে একটি কোলনের সাথে একটি ডিভের 10'000 বার একটি নির্বাচন করেছি - এটি অর্জনের জন্য বিভিন্ন পদ্ধতির সাথে। তারপরে আমি কোনও আইডির নির্বাচনের সাথে ফলাফলগুলিকে কোনও কোলন না দিয়ে তুলনা করেছি, ফলাফলগুলি বেশ অবাক করে।
বাম সময় এমএস ডান নির্বাচক পদ্ধতিতে
299 $("#annoying\\:colon")
302 $("[id='annoying:colon']"
20 $(document.getElementById("annoying:colon"))
71 $("#nocolon")
294 $("[id='nocolon']")
বিশেষত
71 $("#nocolon") and
299 $("#annoying\\:colon")
একটি চমক হিসাবে কিছু আসে