SORU
30 Ocak 2009, Cuma


HTML bir dize kullanarak yerleşik DOM DOM yöntemleri yeni bir öğe oluşturmak veya prototip

Bir öğe dinamik olarak HTML bir dize oluşturmak için çalışıyorum. Burada basit bir örnek, her iki prototip ve DOM kullanarak:

// HTML string
var s = '<li>text</li>';
// DOM
var el1 = document.createElement(s);
// prototype
var el2 = new Element(s);
$('mylist').appendChild(el1);
$('mylist').appendChild(el2);

Her iki listeye Ekle öğesini boş bir yaklaşım.

Bir kurucu olarak prototip Elemanı kullanarak bir tagName ve isteğe bağlı öznitelikleri bir parametre gerektirdiğini biliyorum, ama bana bir HTML dize de izin düşündüm.

Ancak, MSDN devletler "de yöntemi bağımsız değişkeni için bir HTML dize kullanarak createElement yöntemi içindeki tüm öznitelikleri belirtebilirsiniz".... sorunun ne olduğundan emin değilim.

Ve evet, bu kolayca DV ne yazık ki jquery kullanarak bunu yapabileceğimi biliyorum. Burada bir şey çok basit bakan ben miyim?

CEVAP
30 Ocak 2009, Cuma


Açık olmalı, ama bu Microsoft Knowledge Base makalesi için link YANİ tek bir özelliği ile ilgili.

Genellikle aşağıdaki çapraz tarayıcı hilesi nedir, tüm kütüphaneler yapmak DOM öğeleri bir html dize (with some extra work for IE <td>, <tr>s <thead>s <select>s):

var s = '<li>text</li>'; // HTML string

var div = document.createElement('div');
div.innerHTML = s;
var elements = div.childNodes;

Veya var element = div.firstChild eğer tek bir kök düğüm alıyoruz.

HTML dizeleri öğeleri oluşturma kütüphane onaylı yöntem sopa olsa da tavsiye ederim. Prototip bu özellik yerleşik update() method vardır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bokeh

    Bokeh

    9 HAZİRAN 2014
  • fast2hell

    fast2hell

    16 AĞUSTOS 2006
  • Fr. Eckle Studios

    Fr. Eckle St

    29 Kasım 2006