2015-04-24 17 views
19

input type="date" için tarih seçicisi ve datalist'a bağlı girişler için gerçek öneri açılır liste gibi belirli HTML5 denetimleri için DOM gölgesini incelemeye çalışıyorum. Tercihen Chrome'da, ancak diğer tarayıcılar da yapacak.HTML5 tarih seçici gölgesini inceleyin DOM

:

Ben Chrome'un denetçisi seçeneklerinde Gölge DOM ayarını etkinleştirerek beni datepicker kendisi gölge (datepicker göstermek için ::-webkit-calendar-picker-indicator oka içerir) fiili input için DOM ancak incelemek için izin verdiğini tespit ettik

enter image description here

Aynı şey datalist için de geçerlidir. Bu kontroller girdinin bir parçası olmadığı için ortaya çıkar, ancak onları elementler panelinde başka hiçbir yerde bulamıyorum.

Bu tür elemanlar denetlenebilir mi?

Açıklama için küçük düzenleme: Aslında hangi sözde sınıfların hangi denetimlere uygulandığını arıyorum. Bazılarını listeleyen pek çok site var, ancak datalist öğesi için ::-webkit-calendar-picker-indicator öğesini listeleyen bir kaynak buldum. Bu sinsi piçlerden daha fazlasını arıyorum ve bunun için en iyi kaynak tabii ki atın ağzı.

cevap

11

Gerçek seçicinin tamamen farklı bir katmana yüklendiği anlaşılıyor (temelde başlık çubuğu olmayan farklı bir pencere). Yani sanırım cevap: hayır, yapamazsın.

enter image description here

Ben özelleştirmek edebilmek için çok iyi olurdu katılıyorum. Ve benzer pop-up'lar da. XUL'deki Mozilla, içerik menüleri, reklam yayını ve benzeri şeyler tarafından kullanılan display:popup'a sahiptir. Kullanıcı içeriğinde de kullanabileceğimiz kesinlikle harika olurdu.

+0

Bu bir ayıp, teşekkürler. Gerçekten onu özelleştirmek bile istemiyorum, ama sadece yapısını denetlemek ve sözde sınıfların ne olduğunu görmek için. –

7

Google Chrome'un takvim açılır penceresi Gölge DOM'de değil. Bir açılır pencerede eşlenen ayrılmış bir sayfa var. Bkz. WebPagePopupImpl.cpp

Ve popup içeriği written by HTML/JavaScript'dur.

+1

İlginç! Bağladığınız kaynak kodda göremediğim tek şey, oluşturduğu HTML'dir. Orada görebileceğim her şeyden, kullanılan sahte sınıflar eksik gibi görünüyor. Kodun herhangi bir yerinde var mı? –

İlgili konular