Nie chcę używać funkcji drag+drop
w mojej aplikacji, ponieważ nie jest ona potrzebna. Tak więc chcę całkowicie usunąć funkcję okna drag+drop
. Do tej pory podczas przeciągania obrazów okno elektronowe otwiera ścieżkę obrazu. Podczas przeciągania linków okno Electron przekierowuje do łącza.Nie zezwalaj na przekierowanie aplikacji elektronowej podczas przeciągania i upuszczania elementów w oknie
Próbowałem nazywając to:
document.addEventListener('dragstart',function(event){
event.preventDefault();
return false;
},true);
document.addEventListener('drop',function(event){
event.preventDefault();
return false;
},true);
event.preventDefault()
na drop event
powinny pracowali ale nie
próbowali także this:
BrowserWindow.on('will-navigate',function(event){
event.preventDefault();
return false;
});
BrowserWindow.webContents.on('will-navigate',function(event){
event.preventDefault();
return false;
});
również nie. Wszelkie pomysły, jak to naprawić?
removeEventListener() zawiodły także
var listener = function (event) {
console.log('foo');
};
document.removeEventListener('drop',listener,false);
nie powinno być skierowane do elementu, który chcesz dołączyć do słuchacza zdarzeń poprzez id/klasy? Czy nie chciałbyś użyć 'removeEventlistener()', ponieważ chcesz usunąć wydarzenie? – NewToJS
Funkcja używana dla zdarzenia przeciągania, czy jest to funkcja zewnętrzna? Wierzę, że removeEventListener będzie działać tylko dla funkcji zewnętrznej. Jeśli tak, czy wiesz, jaka funkcja jest wywoływana. "Ten, który był użyty do przeciągnięcia elementu" – NewToJS
Próbujesz anulować funkcję, kierując na detektory zdarzeń, co oznacza, że jakiś detektor zdarzeń uruchamia funkcję, aby coś zrobić, a zatem chce anulować/zastąpić tę funkcję. Pytam Cię, jeśli funkcja jest funkcją zewnętrzną lub dołączona do detektora zdarzeń. – NewToJS