Я создал правильный код открытого меню, в котором, когда я добавляю код js во внешний файл, он не работает, а когда я добавляю его на эту страницу, он работает.
Да, есть много сообщений в stackoverflow, которые имеют ту же проблему, но я пытаюсь сделать так, чтобы все решения были там. Затем, после того как я создал таким образом пост.
Даже я добавил wimdow load, Document load
и все функции, но это не работает.
Ниже приведен мой js-код, как я его делаю, как при добавлении в js-файл он будет работать.
$(document).ready(function() {
//$(function() {
var doubleClicked = false;
$(document).on("contextmenu", function (e) {
if(doubleClicked == false) {
e.preventDefault();
var windowHeight = $(window).height()/2;
var windowWidth = $(window).width()/2;
if(e.clientY > windowHeight && e.clientX <= windowWidth) {
$("#arltcntn").css("left", e.clientX);
$("#arltcntn").css("bottom", $(window).height()-e.clientY);
$("#arltcntn").css("right", "auto");
$("#arltcntn").css("top", "auto");
} else if(e.clientY > windowHeight && e.clientX > windowWidth) {
$("#arltcntn").css("right", $(window).width()-e.clientX);
$("#arltcntn").css("bottom", $(window).height()-e.clientY);
$("#arltcntn").css("left", "auto");
$("#arltcntn").css("top", "auto");
} else if(e.clientY <= windowHeight && e.clientX <= windowWidth) {
$("#arltcntn").css("left", e.clientX);
$("#arltcntn").css("top", e.clientY);
$("#arltcntn").css("right", "auto");
$("#arltcntn").css("bottom", "auto");
} else {
$("#arltcntn").css("right", $(window).width()-e.clientX);
$("#arltcntn").css("top", e.clientY);
$("#arltcntn").css("left", "auto");
$("#arltcntn").css("bottom", "auto");
}
$("#arltcntn").fadeIn(50, FocusContextOut());
doubleClicked = true;
} else {
e.preventDefault();
doubleClicked = false;
$("#arltcntn").fadeOut(50);
}
});
function FocusContextOut() {
$(document).on("click", function () {
doubleClicked = false;
$("#arltcntn").fadeOut(50);
$(document).off("click");
});
}
});
#arltcntn {
display: none; position: fixed; border: 1px solid #b1b0b0; width: 250px; padding: 10px 0px 10px 15px; background: #ffffff; box-shadow: 2px 2px 2px 0px #989898; border-radius: 1px; z-index: 99999;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="arltcntn">hello world i am menu</div>
Это не спам-публикация, я изучаю stackoverflow и пытаюсь это сделать, но это не помогло. Я верю в свой вопрос, это будет полезно для таких, как я, ребята.