2
画像をホバリングしているときに画像にリンクを追加しようとしています。 現在、私のjavascriptのは以下の通りです:javascript画像の上にリンクを追加するホバー>リンクをホバーにアクティブにする
// check elements mouse is hover
document.addEventListener("mouseover", addCropLink, true);
document.addEventListener("mouseout", removeCropLink, true);
// add link if element is image
function addCropLink(){
var target = event.target;
if (target instanceof HTMLImageElement){
var cropLink = document.createElement("a");
cropLink.setAttribute("class", "resizeMyPhoto");
cropLink.setAttribute("id", "resizeMyPhoto");
cropLink.setAttribute("target", "_blank");
cropLink.innerHTML += "Crop/Resize";
cropLink.href = chrome.extension.getURL("index.html#");
cropLink.href = cropLink.href + target.src;
target.parentNode.style.position = "relative";
target.parentNode.style.display = "inline-block";
target.parentNode.insertBefore(cropLink, target.nextSibling);
}
}
// remove link if element is image
function removeCropLink(){
var target = event.target;
if (target instanceof HTMLImageElement){
var cropLink = document.getElementById("resizeMyPhoto");
cropLink.parentNode.removeChild(cropLink);
}
}
問題は、ユーザーがリンクをクリックしようとしたとき、彼は画像からマウスアウトをやっていると、リンクが削除されていることです。
解決策はありますか?
mouseout/mouseleaveを使用しても問題は解決しませんでした。
可能な複製(https://stackoverflow.com: はここのコメントとの完全なjavascriptのです/ question/40574662/mouseover-mouseout-with-overlapping-content) –
申し訳ありませんYosef、変更: document.addEventListener( "mouseout"、removeCropLink、true); to: document.addEventListener( "mouseleave"、removeCropLink、true); この問題は解決しません... 他の提案はありますか? – justaguy