我正在試驗最新版本的Firefox中的HTML5 contextmenu項目(目前只支持它的瀏覽器)。當我從上下文菜單中點擊一個菜單項時,如何訪問菜單產生時被點擊的原始元素?HTML5 contextmenu - 當點擊菜單項時訪問最初點擊的元素
用例將顯示項目列表,並且您希望用戶對特定項目執行操作。從菜單中單擊操作後,需要一種方法來確定列表中最初單擊哪個元素以生成菜單。
Here is a JSFiddle (use Firefox to test)
我正在試驗最新版本的Firefox中的HTML5 contextmenu項目(目前只支持它的瀏覽器)。當我從上下文菜單中點擊一個菜單項時,如何訪問菜單產生時被點擊的原始元素?HTML5 contextmenu - 當點擊菜單項時訪問最初點擊的元素
用例將顯示項目列表,並且您希望用戶對特定項目執行操作。從菜單中單擊操作後,需要一種方法來確定列表中最初單擊哪個元素以生成菜單。
Here is a JSFiddle (use Firefox to test)
只是保存到某個地方像this.cte = arguments[0];
然後檢索它以後document.getElementById('testitem').cte
的this
關鍵字的工作中的任何事件。
它完全沒用,因爲它指向'
我是在相同或非常相似的情況。我有一個上下文菜單綁定到一個表頭中的<tr>
。當用戶單擊上下文菜單中的某個項目時,我需要確定單擊<menuitem>
元素時鼠標指針已結束的元素。
解決方案:document.activeElement指的是我所需要的元素。感謝:
感謝您的回答。它正確回答了所問的問題,並有助於解決我的問題。 – Manngo
您可以使用獨立於瀏覽器的jquery contextMenu插件。特別是,下面的示例: http://medialize.github.io/jQuery-contextMenu/demo/on-dom-element.html 顯示瞭如何識別觸發DOM元素。
不,你不能。這根本不是HTML5上下文菜單。除此之外,它繞過了現有的上下文菜單,因此您會丟失原始項目。 – Manngo
是的,這種方法是我現在正在工作的方法,但我希望有更好的解決方案。 – berg