mouse ile tıkladığım yerde div açma
Mouse ile tıkladığım yerde cursorun sağ altına doğru bir div açılmasını istiyorum nasıl yapabilirim?
örnek (kırmızı yuvarlak tıkladığım yer)
bu örnekte sol alta doğru açılmış ben sağ alta doğru istiyorum
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (5)
function isElement(element) {
return element instanceof Element || element instanceof HTMLDocument;
}
window.oncontextmenu = (e) => { // Değiştirilen kod onclick değil de oncontextmenu
let id = "myid",
elemWidth = 250,
elemHeight = 250,
borderThickness = 2;
if (isElement(document.getElementById(id)))
document.getElementById(id).remove();
let div = document.createElement("div");
div.id = id;
div.style.position = "absolute";
div.style.border = `${borderThickness}px solid #ddd`;
div.style.height = `${elemHeight}px`;
div.style.width = `${elemWidth}px`;
div.style.display = "none";
e.clientX + elemWidth + borderThickness * 2 > window.innerWidth
? (div.style.right = `${window.innerWidth - e.clientX}px`)
: (div.style.left = `${e.clientX}px`);
e.clientY + elemHeight + borderThickness * 2 > window.innerHeight
? (div.style.bottom = `${window.innerHeight - e.clientY}px`)
: (div.style.top = `${e.clientY}px`);
document.body.appendChild(div);
$(`#${id}`).show({
effect: "fold",
horizFirst: true,
duration: 400
});
return false; // Eklenen kod
};
Tayfun hocanın şu dersi yardımcı olabilir size CSS :focus-within ile Açılır/Kapanır Alanlar Yapmak yada bu dersi CSS ile Yatay/Dikey Animasyonlu Açılır Menü Yapımı