42 lines
1.2 KiB
HTML
42 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<style>
|
|
p {
|
|
font-size: 20px;
|
|
width: 100px;
|
|
text-align: center;
|
|
display: inline-block;
|
|
}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<p contenteditable>foobar</p>
|
|
<div>Has "Translate" item? <span id="has-translate"></span></div>
|
|
<div>Has "Look Up" item? <span id="has-look-up"></span></div>
|
|
<div>Has "Search the Web" item? <span id="has-search"></span></div>
|
|
<script>
|
|
function hasMenuItemContainingTitle(items, titleToQuery)
|
|
{
|
|
for (let item of items) {
|
|
let title = item.title || item;
|
|
if (title.includes?.(titleToQuery))
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
|
|
let paragraph = document.querySelector("p");
|
|
let boundingRect = paragraph.getBoundingClientRect();
|
|
|
|
eventSender.mouseMoveTo(boundingRect.left + boundingRect.width / 2, boundingRect.top + boundingRect.height / 2);
|
|
items = eventSender.contextClick();
|
|
|
|
document.getElementById("has-look-up").textContent = hasMenuItemContainingTitle(items, "Look Up");
|
|
document.getElementById("has-translate").textContent = hasMenuItemContainingTitle(items, "Translate");
|
|
document.getElementById("has-search").textContent = hasMenuItemContainingTitle(items, "Search the Web");
|
|
|
|
paragraph.remove();
|
|
</script>
|
|
</body>
|
|
</html> |