jQuery অ্যাপেন্ড () বনাম অ্যাপেনডিল্ড ()


100

এখানে কিছু নমুনা কোড রয়েছে:

function addTextNode(){
    var newtext = document.createTextNode(" Some text added dynamically. ");
    var para = document.getElementById("p1");
    para.appendChild(newtext);
    $("#p1").append("HI");
}
<div style="border: 1px solid red">
    <p id="p1">First line of paragraph.<br /></p>
</div>

মধ্যে পার্থক্য কি append()এবং appendChild()?
কোনও বাস্তব সময়ের পরিস্থিতি?



একটি jQuery পদ্ধতি, অন্যটি নেটিভ জেএস পদ্ধতি, তারা উভয়ই একই কাজটি করে তবে সংযোজন () একাধিক উপাদান গ্রহণ করে।
অ্যাডিনিও

নীচে একটি লাইব্রেরি ব্যবহার করা হচ্ছে (উদাহরণস্বরূপ সাধারণভাবে রেফারেন্সযুক্ত jQuery), শীর্ষটি উপাদান যুক্ত করতে "নেটিভ" ডিওএম পদ্ধতি ব্যবহার করছে।
কোয়ান্টাস 94 ভারী

উত্তর:


106

মূল পার্থক্যটি হ'ল appendChildএকটি ডিওএম পদ্ধতি এবং appendএটি একটি জিকুয়ের পদ্ধতি। দ্বিতীয়টি প্রথমটি ব্যবহার করে আপনি jQuery উত্স কোডে দেখতে পারেন

append: function() {
    return this.domManip(arguments, true, function( elem ) {
        if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {
            this.appendChild( elem );
        }
    });
},

আপনি যদি আপনার প্রকল্পে jQuery লাইব্রেরি ব্যবহার করেন appendতবে পৃষ্ঠায় উপাদান যুক্ত করার সময় আপনি সর্বদা নিরাপদ থাকবেন ।


আপনি কীভাবে অ্যাপেনড "নিরাপদ" এবং অ্যাপেন্ডচিল্ড না তা জানেন? ডোমমনিপ কী করে?
রব ফক্স

4
@ রবফক্স: নিরাপদে আমি বলতে চাইছিলাম যে আপনি যদি জিকিউরি ব্যবহার করেন তবে আপনি সর্বদা সংযোজন ব্যবহার করা নিরাপদ (যেখানে কোনও পরিস্থিতি নেই যেখানে ডোম অ্যাপেন্ডচাইল্ড পছন্দসই)। ডোমমনিপের সাথে সম্পর্কিত বলে মনে হচ্ছে যে মূল উদ্দেশ্যটি ডিওএম ডকুমেন্টফ্রেগমেন্টগুলি ব্যবহার করা। এখানে আপনার পদ্ধতির বিবরণ রয়েছে এবং এখানে আপনার কাছে টুকরো ব্যবহারের পিছনে অনুপ্রেরণা সম্পর্কে জন রেগের অফিশিয়াল শব্দ রয়েছে
ক্লোদিও রেডি

4
জাভাস্ক্রিপ্ট একটি ParentNode.append()এখন আছে। আরও তথ্যের জন্য দয়া করে @ সাগরভের উত্তরটি দেখুন।
জো ই।

আমি @ জোইয়ের মতো একই কথা বলতে যাচ্ছিলাম। : প্যারেন্টনোড.অ্যাপেন্ড () দেখুন
লনি সেরা

47

আর নেই

এখন append জাভাস্ক্রিপ্ট একটি পদ্ধতি

সংযোজন পদ্ধতিতে এমডিএন ডকুমেন্টেশন

এমডিএন উদ্ধৃতি

ParentNode.appendপদ্ধতি একটি সেট সন্নিবেশ নোড বস্তু বা এর DOMStringশেষ সন্তান পরে বস্তু ParentNodeDOMStringঅবজেক্টস সমান পাঠ্য নোড হিসাবে সন্নিবেশ করা হয়।

এটি আইই এবং এজ দ্বারা সমর্থিত নয় তবে ক্রোম (54+), ফায়ারফক্স (49+) এবং অপেরা (39+) দ্বারা সমর্থিত।

জাভাস্ক্রিপ্টের সংযোজন jQuery এর সংযোজন এর অনুরূপ।

আপনি একাধিক যুক্তি পাস করতে পারেন।

var elm = document.getElementById('div1');
elm.append(document.createElement('p'),document.createElement('span'),document.createElement('div'));
console.log(elm.innerHTML);
<div id="div1"></div>


4
এমডিএন এখন জাভাস্ক্রিপ্টে কী আছে তা বলে না, ইএস স্পেসিফিকেশনটি করে
রায়মন্ডস

18

append কোনও উপাদান বা কিছু HTML যুক্ত করার জন্য একটি jQuery পদ্ধতি।

$('#example').append('Some text or HTML');

appendChild সন্তানের উপাদান যুক্ত করার জন্য একটি খাঁটি ডোম পদ্ধতি।

document.getElementById('example').appendChild(newElement);

9

আমি জানি এটি একটি পুরানো এবং উত্তরযুক্ত প্রশ্ন এবং আমি ভোটের সন্ধান করছি না আমি কেবলমাত্র একটি অতিরিক্ত সামান্য জিনিস যুক্ত করতে চাই যা আমি মনে করি নতুনদেরকে সাহায্য করতে পারে।

হ্যাঁ appendChildএকটি DOMপদ্ধতি এবং appendজ্যাকুয়ারি পদ্ধতি তবে কার্যত মূল পার্থক্যটি হ'ল appendChildপ্যারামিটার হিসাবে নোডের অর্থ এই যে আপনি যদি ডিওমে একটি খালি অনুচ্ছেদ যুক্ত করতে চান তবে আপনাকে pপ্রথমে সেই উপাদানটি তৈরি করতে হবে

var p = document.createElement('p')

তারপরে আপনি এটিকে ডিওএমে যুক্ত করতে পারেন যেখানে জিকুয়ারি appendআপনার জন্য সেই নোড তৈরি করে এবং এটি কোনও টেক্সট উপাদান বা এইচটিএমএল উপাদান বা সংমিশ্রণে এখনই এটি ডিওমে যুক্ত করতে পারে!

$('p').append('<span> I have been appended </span>');



0

appendChildএকটি খাঁটি জাভাস্ক্রিপ্ট পদ্ধতি যেখানে appendএকটি jQuery পদ্ধতি।


0

জাভাস্ক্রিপ্ট appendchild পদ্ধতি অন্য উপাদান একটি আইটেম সংযোজন করতে ব্যবহার করতে পারেন। JQuery এর পরিশেষে উপাদান একই কাজ কিন্তু অবশ্যই লাইনের কম সংখ্যায় আছে:

আসুন আমরা একটি তালিকার একটি আইটেম সংযোজন একটি উদাহরণ নিতে:

ক) জাভাস্ক্রিপ্ট সহ

var n= document.createElement("LI");                 // Create a <li> node
var tn = document.createTextNode("JavaScript");      // Create a text node
n.appendChild(tn);                                   // Append the text to <li>
document.getElementById("myList").appendChild(n);  

খ) jQuery সহ

$("#myList").append("<li>jQuery</li>")
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.