/ / Ako skopírovať objekt javascript s členmi iba na čítanie pre členov, ktorí nie sú len na čítanie? - javascript, jquery

Ako skopírovať objekt javascript s členmi iba na čítanie pre členov, ktorí nie sú len na čítanie? - javascript, jquery

Mám objekt javascript, konkrétne objekt MouseEvent:

    $("#my_container").bind("mousemove", function(e) {
if (someCondition) {
e.pageX = calcNewPageX
}
}});

a musím zmeniť vlastnosť pageX tohto objektu, ale je to readonly, aby som dostal túto chybu v konzole:

Uncaught TypeError: Nemožno nastaviť vlastnosť pageX z #, ktorá má iba getra

Takže som sa snažil kopírovať na nový objekt a zmeniť vlastnosť pageX pomocou jQuery "s rozšíriť takto:

var copiedEvent = $.extend(true, { pageX: 500 }, e);

ale stále mám rovnakú chybu.

Ako môžem skopírovať objekt MouseEvent a nastaviť vlastnosť pageX nového kopírovacieho objektu na niečo vlastné? Čo chýba alebo sa mýli?

odpovede:

1 pre odpoveď č. 1

Vytvorte novú udalosť s new Event z vašej staršej udalosti a upravte tieto hodnoty:

var newEvent = new Event(e);
newEvent.pageX = calcNewPageX();

Ref: https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events