Откройте contextMenu элемента без физического нажатия - PullRequest
0 голосов
/ 28 апреля 2019

Я пытался манипулировать этим кодом, который нашел в интернете. Это полезно для меня при переходе по ссылкам. Но в некоторых случаях мне нужно использовать функцию щелчка правой кнопкой мыши, чтобы открыть contextMenu этого элемента.

Пожалуйста, посмотрите этот код, если есть способ, которым вы можете преобразовать это, чтобы открыть contextMenu.

Я пытался манипулировать им с помощью некоторых кодов для вставки внутрь, но безуспешно.

(function run (pXPathStr) {
  'use strict';

var ptyScriptName   = "Click on Link Identified by XPath"

/*
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PURPOSE:  Click on the Hyperlink Identified by the XPath provided by KM

RETURNS:  One of these, as text:
  • "OK" -- if successful, no errors

  • "[ERROR]" at start of results if a script error occurred.

KM VARIABALES REQUIRED:
  • xPath    -- the full XPath to the Link

    EXAMPLE XPATH:
    //*[@id="ctl00_MainContent_ucEStatements_dlStatements_ctl00_lbStatementDate"]

KM VARIABLES SET:
  • NONE

REF:
  • [Introduction to using XPath in JavaScript](https://developer.mozilla.org/en-US/docs/Introduction_to_using_XPath_in_JavaScript)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
*/
  //--- GET THE XPATH FROM KM ---
  var xPathStr = document.kmvar.xPath;

  var returnResults = "TBD";

  //--- GET THE HTML ELEMENT IDENTIFIED BY THE XPATH ---
  var elemFound =  document.evaluate(
      xPathStr, document, null, 0, null
    ).iterateNext();

  if (elemFound) {
    //--- CLICK ON THE LINK ---
    elemFound.click();
    returnResults = "";
  }
  else {
    //--- ERROR:  ELEMENT WAS NOT FOUND ---
    returnResults = '[ERROR] Element NOT FOUND for XPath:\n' + xPathStr;
    alert(returnResults);
  }

  return returnResults;

})();

/* 
*/

Я ожидаю, что при запуске этой функции откроется contextMenu элемента.

Я буду использовать contextMenu для элементов изображения для загрузки на рабочий стол.

Вот изображение меню, которое я хочу открыть после щелчка правой кнопкой мыши по ссылке. Это результат действия в ссылке на изображение, которое я хочу выполнить

Щелкните правой кнопкой мыши Меню, которое я хочу открыть после щелчка правой кнопкой мыши, и выделенный синий цвет - это то, что я щелкну следующим. Но я могу легко вызвать это, нажав клавишу «S», а затем введите, чтобы загрузить изображение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...