2010-07-01 16 views
6

Yerleşik bir nesneye bir onClick işleyicisi eklemeye çalışıyorum. İşleyici, <script src="... aracılığıyla geçerli html dosyasına bağlı bir harici .js dosyasında bulunan bir işlevi yürütmek zorundadır.Katıştırılmış bir html nesnesine JavaScript onClick işleyicisi nasıl eklenir?

Başka bir yerde bulunması nedeniyle işlevi farklı şekilde göndermem gerekir mi? onclick içinde SVG uygulamak ve dış bağlamanız You have

<embed src="svg/button.svg" id="buttonEmbed" width="95" height="53" 
type="image/svg+xml" onClick="buttonEvent('buttonClicked')"/> 
+0

Yalnızca ana kapsayıcının svg onclick'in içindeki komut dosyasını arayamaz mısın? – mplungjan

+0

olası kopyası [onclick ile tıklanabilir bir svg görüntü nesnesinin mutlak konumlandırmadan kaçınılması] (http://stackoverflow.com/questions/2296097/making-an-svg-image-object-clickable-with-onclick-avoiding-absolute -pozisyon) – jtbandes

cevap

8

: şu anda (herhangi bir hata üretmez aynı zamanda çalışmayan, ama) haliyle İşte

kodudur JavaScript işlevi javascript kullanarak svg içinde. Örnekler için SVG wiki'ye bakın.

Güncelleme: Görünüşe göre SVG wiki artık yok. Artık (hızlı bir şekilde) bulabileceğim en iyi referansların StackOverflow'un kendisinde olması sürpriz değil.

This answer describes how to implement onclick inside the svg.

+0

Teşekkürler. Onclick'i svg şeklinin içine yerleştirdim, ancak şimdi aradığı işlevi bulamıyor. Muhtemelen bir harici .js dosyasında olduğu için? –

+0

Harici işlevi SVG'nizden nasıl çağırıyorsunuz? Bunu 'top.' veya' parent.' ile ön eklediniz mi? –

+0

Basitçe onclick = "buttonEvent()" yi ekledim (bir uyarı ile test edildikten sonra). Ne önek ve nerede bulunmalıyım? –

1

Ya bir javascript bağlaması kullanın (Mario Menger zaten yanıtladı).

Kullanım tıklama tüketici olarak boş bir bağlantı etiketi <a href="javascript:someFunc()"></a>: Sizin veya bağlayıcı kullanmaz yapamıyorsanız

, sen xil3bir değişiklikle cevap verdiğini kullanabilirsiniz. Z-endeksi ve pozisyon/boyutu ayarlayın, böylece svg nesnesine konumlandırın (tarayıcılar arası uyumluluk için).

0

Onclick, hepsinin küçük harfli olması gerekir.

<embed src="svg/button.svg" id="buttonEmbed" width="95" height="53" 
type="image/svg+xml" onclick="alert('hello!');"/> 
+1

Bunun işe yaradığını düşünmüyorum. – wkm

İlgili konular