Проблема в том, что:
https://developer.mozilla.org/en-US/docs/Web/API/HTMLAnchorElement#Properties
HTMLAnchorElement.text
Является ли DOMString синонимом свойства Node.textContent.
Итак, HTMLAnchorElement.prototype.text
- это , слежка ваш заказ Element.prototype.text
.
Другая проблема заключается в том, что HTMLAnchorElement.prototype.text
является установщиком - вы не можете просто переназначить его, например,
HTMLAnchorElement.prototype.text = function(str){
this.textContent = str
return this
}
, потому что это вызовет установщик, в результате чего Illegal Invocation
. Сначала вам придется удалить свойство text
в прототипе, а , а затем присвоить HTMLAnchorElement.prototype
:
Element.prototype.text = function(str){
this.textContent = str
return this
}
delete HTMLAnchorElement.prototype.text;
HTMLAnchorElement.prototype.text = function(str){
this.textContent = str
return this
}
let div = document.createElement('div').text('div text')
let a = document.createElement('a').text('anchor text')
document.body.append(div,a)