2017-12-28 22 views
0

저는 pinterest를위한 작은 봇을 개발 중이며 pinterest가 React를 사용하고 있음을 알았습니다. 메시지 전송에 문제가 있습니다. <textarea>에 메시지 텍스트를 입력하고 input 이벤트 (실제 상태 업데이트)를 시뮬레이트 할 수 있지만 메시지를 보내려면 keydown 이벤트 (코드 13)를 시뮬레이트 할 수 없습니다. 반응은 그냥 내 시도를 무시합니다.반응 스크립트에서 내용 스크립트의 keydown 시뮬레이션

let textarea = $(".reactConversationsContainer .reactNewMessageInput"); 
let node = textarea[0]; 

let event = document.createEvent('UIEvents'); 
event.initEvent('focus', false, false); 
node.dispatchEvent(event); 

event = new KeyboardEvent('keydown', { 
    code: "13", 
    keyCode: 13, 
    charCode: 13, 
    key: 13, 
    which: 13 
}); 
node.dispatchEvent(event); 

내가

답변

0

좋아 주제에 대한 정보를위한 감사합니다, 나는이에게 자신을 해결했다.

전적으로,이 라이브러리는 저에게 잘 작동합니다 : simulate.js. 당신은 필요한 코드를 추출 할 수 있습니다. lib는 꽤 간단합니다.

페이지에서 분리되어 (this question 참조) 스크립트를 삽입해야 이벤트 (위의 링크에서 설명 함)를 트리거하므로 contentscripts는 페이지 핸들러를 실행할 수 없습니다.