যদিও এটি খুব পুরানো প্রশ্ন, আমি ভেবেছিলাম সাম্প্রতিক তথ্য দিয়ে এটি আপডেট করা ভাল হবে;
JQuery 1.8 যেহেতু একটি jQuery.parseHTML () ফাংশন রয়েছে যা এখন উপাদান তৈরি করার পছন্দের উপায়। এছাড়াও, এইচটিএমএলকে পার্সিংয়ের সাথে কিছু সমস্যা রয়েছে $('(html code goes here)')
, উদাহরণস্বরূপ অফিসিয়াল জিকুয়ের ওয়েবসাইটটি তাদের রিলিজ নোটগুলির মধ্যে একটিতে নীচে উল্লেখ করেছে :
রিলাক্সড এইচটিএমএল পার্সিং: আপনার আবার $ (এইচটিএমএল স্ট্রিং) এ ট্যাগ করার আগে শীর্ষস্থান বা নতুন লাইন থাকতে পারে। আমরা এখনও দৃ strongly়ভাবে পরামর্শ দিচ্ছি যে আপনি বাহ্যিক উত্স থেকে প্রাপ্ত HTML কে পার্স করার সময় আপনি p .parseH HTML () ব্যবহার করুন এবং ভবিষ্যতে HTML পার্সিংয়ে আরও পরিবর্তন আনতে পারেন।
আসল প্রশ্ন সম্পর্কিত, প্রদত্ত উদাহরণটি অনুবাদ করা যেতে পারে:
this.$OuterDiv = $($.parseHTML('<div></div>'))
.hide()
.append($($.parseHTML('<table></table>'))
.attr({ cellSpacing : 0 })
.addClass("text")
)
;
যা দুর্ভাগ্যক্রমে কেবল ব্যবহারের চেয়ে কম সুবিধাজনক $()
তবে এটি আপনাকে আরও নিয়ন্ত্রণ দেয়, উদাহরণস্বরূপ আপনি স্ক্রিপ্ট ট্যাগগুলি বাদ দিতে পছন্দ করতে পারেন (এটি onclick
যদিও এর মতো ইনলাইন স্ক্রিপ্টগুলি ছেড়ে দেবে ):
> $.parseHTML('<div onclick="a"></div><script></script>')
[<div onclick="a"></div>]
> $.parseHTML('<div onclick="a"></div><script></script>', document, true)
[<div onclick="a"></div>, <script></script>]
এছাড়াও, নতুন বাস্তবের সাথে সামঞ্জস্য করা শীর্ষের উত্তর থেকে একটি মানদণ্ড এখানে রয়েছে:
জেএসবিন লিংক
jQuery 1.9.1
p পার্সএইচটিএমএল: 88 মিমি
$ ($। পার্সএইচটিএমএল): 240 মিমি
<div> </div>: 138 মিমি
<ডিভ>> 143 মিমি
createElement: 64ms
দেখে মনে হচ্ছে parseHTML
অনেক কাছাকাছি createElement
তুলনায় $()
, কিন্তু সমস্ত বুস্ট একটি নতুন jQuery এর অবজেক্ট ফলাফল মোড়কে সব চেষ্টাই ব্যর্থ হল