Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   не получается нажать на кнопку в ВК (https://javascript.ru/forum/dom-window/63701-ne-poluchaetsya-nazhat-na-knopku-v-vk.html)

selevo 24.06.2016 11:12

не получается нажать на кнопку в ВК
 
добавил к странице пользовательский скрипт (через аддон greasemonkey)
чтобы по ENTER нажимало кнопку "сохранить"
добавил следующее:

addEventListener ( 'keypress', (e)=> 
   {
    if ( e.keyCode == 13 ) 
      {
     alert("ENTER нажат");
       flat_button.click();     
 
       }
   }, false, window
 );


вот видео: https://youtu.be/_R0LXjKUeUo

alert выводится но кнопка не нажимается
подскажите где что посмотреть ещё.

само popup меню выглядит так:
<div style="width: 422px; height: auto; margin-top: 92.6667px;" class="popup_box_container box_dark"><div class="box_layout" onclick="__bq.skip=true;"><div style="" class="box_title_wrap"><div class="box_x_button">Закрыть</div><div class="box_title">Создание подборки</div></div><div class="box_body" style="display: block; padding: 5px 20px 25px;"><div id="market_album_edit_error" class="market_album_edit_error error"></div>
<div class="market_box_label">Название подборки</div>
<input placeholder="Введите название подборки" id="market_album_edit_title" class="market_album_edit_title dark" value="" type="text">
<div class="market_box_label">Обложка</div>
<div class="market_album_edit_thumb_descr">Вы можете загрузить изображение в формате <b>JPG</b>, <b>GIF</b> или <b>PNG</b>.</div>
<div id="market_album_edit_thumb_upload" class="market_album_edit_thumb_upload"><button class="flat_button upload_btn secondary small" onclick="this.nextSibling.click()">Загрузить обложку</button><input class="file" size="28" onchange="Upload.onFileApiSend(0, this.files);" accept="image/*" name="photo" style="visibility: hidden; position: absolute;" type="file"></div>
<div id="market_album_edit_thumb_cont"></div>
<div id="market_album_edit_main_check" class="market_album_edit_checkbox checkbox" onclick="checkbox(this);"><div></div>Это основная подборка сообщества</div>
<div id="market_album_edit_thumb_dropbox" class="dropbox">
  <div class="dropbox_wrap">
    <div class="dropbox_area">
      <div class="dropbox_label">Перетащите файлы сюда</div>
    </div>
  </div>
</div></div><div style="display: block;" class="box_controls_wrap"><div class="box_controls"><table class="fl_r" cellpadding="0" cellspacing="0"><tbody><tr><td><button class="flat_button">Создать</button></td></tr></tbody></table><div class="progress" id="box_progress0"></div><div class="box_controls_text"></div></div></div></div></div>

Dilettante_Pro 24.06.2016 14:26

selevo,
Так нужная кнопка не найдется:
Цитата:

Сообщение от selevo
flat_button.click();

тем более, что такой класс есть и у других кнопок.
Нужно добавить кнопке id и использовать document.getElementById

selevo 24.06.2016 17:06

как я добавлю кнопке id если там нет id у кнопки
я только класс вижу в коде
где смотреть ?
я посмотрел XPATH кнопки и получил вот что :
id('box_layer')/x:div[2]/x:div/x:div[3]/x:div/x:table/x:tbody/x:tr/x:td/x:button

Это просто можно куда-то вставить и click ?
я сделал вот так:
document.getElementById('box_layer').click();

теперь оно, это окно закрывает просто, как бы мимо нажатия кнопки и изменения не сохраняет.
или не работает вообще если я картинку уже загрузил.
https://youtu.be/kh5a3ZvmmDQ
Третий день в JS :)


Часовой пояс GMT +3, время: 18:47.