К сожалению, нет времени вникать, а с
EventTarget никогда не работал, но
возможно, проблема в том, что нужно реализовать метод
.valueOf. Вот пример с наследования
String для понимания, о чём я:
function MyString(value) {
this.value = value;
}
MyString.prototype = Object.create(String.prototype);
// если не будет .toString, возникнет ошибка
MyString.prototype.toString = function () {
return this.value;
};
var test = new MyString("test");
alert(test.split(""));