<pre><script type="text/javascript">
document.createElement("div").style.setProperty("opacity", 0, "");
document.write("CSSStyleDeclaration's setProperty coerces strings. Hooray!\n");
document.write("CSSStyleDeclaration's setProperty requires strings. Patching…\n");
var d3_style_prototype = CSSStyleDeclaration.prototype,
d3_style_setProperty = d3_style_prototype.setProperty;
d3_style_prototype.setProperty = function(name, value, priority) {
d3_style_setProperty.call(this, name, value + "", priority);
document.createElement("div").style.setProperty("opacity", 0, "");
document.write("CSSStyleDeclaration's setProperty now coerces strings. Hooray!\n");
document.write("CSSStyleDeclaration's setProperty still requires strings. I give up. :(\n");