Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/451.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我的图标没有显示出来?_Javascript_Jquery_Html_Contextmenu - Fatal编程技术网

Javascript 为什么我的图标没有显示出来?

Javascript 为什么我的图标没有显示出来?,javascript,jquery,html,contextmenu,Javascript,Jquery,Html,Contextmenu,这是一个完整的项目 我一直在合作一个项目,我们被困在一个问题上,我们希望所有的图标都有一个右键单击菜单,有几个选项,每个图标都是唯一的。我们几乎完成了,但现在图标没有被吸引到屏幕上。我们当时只在处理前5个问题。这是我第一次使用jQuery,如果有任何帮助,我将不胜感激 我现在将发布我认为相关的项目片段 icon.html script.js 还有更多的文件和代码,如果您需要,可以在上面下载 控制台还显示TypeError:a在我的jQuery.js文件中为null。检查此项 /* get ico

这是一个完整的项目

我一直在合作一个项目,我们被困在一个问题上,我们希望所有的图标都有一个右键单击菜单,有几个选项,每个图标都是唯一的。我们几乎完成了,但现在图标没有被吸引到屏幕上。我们当时只在处理前5个问题。这是我第一次使用jQuery,如果有任何帮助,我将不胜感激

我现在将发布我认为相关的项目片段

icon.html

script.js

还有更多的文件和代码,如果您需要,可以在上面下载

控制台还显示TypeError:a在我的jQuery.js文件中为null。

检查此项

/* get icon id */
function buildMenu(iconId) {
    $("#remove").click(function() {
       $("#" + iconId).hide();
       cancel();
    });
    $("#menu-title").text($("#"+iconId).data("name"));
    $("#site-link").attr("href", $("#" + iconId).parent().attr("href")).click(cancel);
    switch(iconId) {
    };
}

/* set right click for icons */
$(document).ready(function() {
    buildIcons();
    $(".icons").on("contextmenu", function(e) {
        buildMenu(this.id);
        $("#contextmenu").show().css({
            top: e.clientY,
            left: e.clientX
        });
        e.preventDefault();
    });
});

function cancel() {
    $("#contextmenu").hide();
}

jQuery无法包含来自另一个文件的html。

结果中没有明显的差异。您的代码在上按预期工作。请确保您获得了获取数据/icon.htmlget请求所需的HTML。您是否可以下载该项目并查看问题点是否不同?发送它。。。如果可能的话,可以设置JsFiddle.It,我想您可以通过双击在file:///中打开的文件来打开该文件,然后尝试在web服务器中进行测试。NodeJs web服务器易于设置。
function buildIcons() {
    var icons = [
        ["https://discordapp.com/", "discord-icon", "icons/discord.png", "social", "Discord", 
            [
                 ["Main Account", "lela_null", "somepass"], 
                 ["Bot Account", "Uta Yuki", "somepass"]
            ]
        ],
        ["https://www.youtube.com/", "youtube-icon", "icons/youtube.png", "social", "YouTube", 
            [
                 ["Main Account", "lela@email", "somepass"], 
            ]
        ],
        ["https://www.facebook.com/?sk=h_chr", "facebook-icon", "icons/facebook.png", "social", "Facebook", 
            [
                 ["Main Account", "lela@email", "somepass"], 
            ]
        ],
        ["https://www.twitter.com/", "twitter-icon", "icons/twitter.png", "social", "Twitter", 
            [
                 ["Main Account", "lela@email", "somepass"], 
            ]
        ],
        ["https://mg.mail.yahoo.com/neo/launch?.rand=8647i3s40jpvp", "ymail-icon", "icons/ymail.png", "social", "Yahoo Mail", 
            [
                 ["Main Account", "lela@email", "somepass"], 
            ]
        ]
    ];
  
    
    
    $.get('data/icon.html', function(data) {
        var icon;
        icons.forEach(function(iconData, index, array) {
            console.log(index);
            icon = $(data).insertAfter("#" + iconData[3]);
            $(icon).find("img").attr("src", iconData[2]);
        });
    });
}; 
/* get icon id */
function buildMenu(iconId) {
    $("#remove").click(function() {
       $("#" + iconId).hide();
       cancel();
    });
    $("#menu-title").text($("#"+iconId).data("name"));
    $("#site-link").attr("href", $("#" + iconId).parent().attr("href")).click(cancel);
    switch(iconId) {
    };
}

/* set right click for icons */
$(document).ready(function() {
    buildIcons();
    $(".icons").on("contextmenu", function(e) {
        buildMenu(this.id);
        $("#contextmenu").show().css({
            top: e.clientY,
            left: e.clientX
        });
        e.preventDefault();
    });
});

function cancel() {
    $("#contextmenu").hide();
}
$.get('data/icon.html', function(data) {
    icons.forEach(function(iconData, index, array) {
        console.log(index);

        // Get 'data' as jQuery object
        var $data = $(data);

        // Find image tag and set source
        $data.find('img').attr('src', iconData[2]);

        //Finally put it on page
        $data.insertAfter("#" + iconData[3]);
    });
});