2015-06-15 6 views
9

zaman 1.72443e+009 değeri dönüştürür. Her şey beklendiği çalışır gibi, sen eleman adını değiştirirseniz https://jsfiddle.net/kytbh4Ls/6/cloneNode() değişiklikleri InternetExplorer 10 öznitelik değeri ve adı özniteliği <code>stdDeviation</code> InternetExplorer (10 ve 11) sahiptir <code>feGaussianBlur</code> olan bir eleman üzerinde <code>cloneNode()</code> çağrı zaman 11

, farklı bir özellik adı kullanmak veya başka bir tarayıcı (Chrome, Firefox) üzerinde keman çalıştırın: İşte

sorunu göstermektedir dört astar olduğunu . Farklı bir özellik değeri kullanmak hiçbir şeyi değiştirmez.

Bu gerçekten garip davranışların sebebi ne olabilir? Ve bu konuda yapılabilecek bir şey var mı? İşte kullanarak modifiye keman

yerine cloneNode() arasında jQuery en clone() maalesef aynı sonucu üreten: https://jsfiddle.net/kytbh4Ls/7/

+1

Hata gibi görünüyor. Microsoft'a bildirin. http://blog.reybango.com/2013/02/28/submitting-an-internet-explorer-bug-to-microsoft/ –

+0

Yani, daha önce sahip olduğu değer ne olursa olsun? – Bergi

cevap

1

olduğunu. Internet Explorer'ın stdDeviationX ve stdDeviationY yerine stdDeviation'u kullandığı doğru olsa da, cloneNode() işlevinin özniteliklerle uğraşırken hiçbir işi yoktur. Değiştirilmiş özniteliklere sahip bir düğüm değil, düğümün bir klonunu döndürmelidir.

Bunu Internet Explorer geliştirme ekibine bildirmeniz gerekir (bunu yapmak için zamanınız varsa). Şu anda muhtemelen yapabileceğiniz tek şey manuel bir geçici çözüm uygulamaktır.

0

sorun IE stdDeviation özellik kullanmak olmamasıdır. Bunun yerine stdDeviationX ve stdDeviationY kullanır.

bu keman bakın

... İşte FIDDLE

Bu Internet Explorer net bir hata olduğunu Microsoft page for feGaussianBlur

var element = document.createElementNS('http://www.w3.org/2000/svg', "feGaussianBlur"); 
element.setAttribute('stdDeviationX', 5); 
element.setAttribute('stdDeviationY', 5); 

var clonedElement = element.cloneNode(); 

alert("Original:" + element.getAttribute("stdDeviationX") + ", Cloned:" + clonedElement.getAttribute("stdDeviationX")); 
+1

Teşekkürler, ancak stdDeviationX ve stdDeviationY InternetExplorer'da SVG'lerde çalışmaz. Doğru özellik stdDeviation. İşte özellikleri karşılaştıran çok basit bir SVG: https://jsfiddle.net/1vkn22bp/ Gördüğünüz gibi sadece stdDeviation istenen etkiyi verir. Ayrıca, stdDeviation desteklenmediyse bile, tarayıcının klonlamadaki özellik değerini değiştirmesinin bir nedeni yoktur. – Waruyama

+1

Kötü şöhretli. IE stdDeviationX ve stdDeviationY kullanır. ClonedElement.setAttribute ("stdDeviation", 5) gibi klonlanmış öğedeki stdDeviation'ı ayarlamanızın sizi durdurması; –

+0

Hangi sürümün IE'de test edildiğini bilmiyorum ama IE11'de stdDeviationX' ve stdDeviationY işlevi çalışmıyor; stdDeviation işlevi ise klonlama yaparken efekt veriyor ancak kırılıyor. – oBusk

İlgili konular