Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/86.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.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 Noobie Jquery问题-为什么';这个简单的脚本不行吗?_Javascript_Jquery - Fatal编程技术网

Javascript Noobie Jquery问题-为什么';这个简单的脚本不行吗?

Javascript Noobie Jquery问题-为什么';这个简单的脚本不行吗?,javascript,jquery,Javascript,Jquery,我正在学习JQuery,我为我的主页编写了一个简单的AJAX外部脚本,它试图从一个单独的html文件加载一些静态标记,并在我悬停在链接上时将其插入我的主页 $(function() { $('a#contact_link').hover(function() { alert('test1'); $('<div id="contact_container">').load('contact.htm #contact', functio

我正在学习JQuery,我为我的主页编写了一个简单的AJAX外部脚本,它试图从一个单独的html文件加载一些静态标记,并在我悬停在链接上时将其插入我的主页

$(function()
{
    $('a#contact_link').hover(function() 
    {
        alert('test1'); 
        $('<div id="contact_container">').load('contact.htm #contact', function() 
        {
            alert('test2');
            /*$(this) + '</div>';
            $(this).hide()
                .insertAfter('#header')
                .slideDown(1000)  */  
        });

        return false;
    });
});
$(函数()
{
$('a#contact_link')。悬停(函数()
{
警报(“test1”);
$('').load('contact.htm#contact',function()
{
警报(“test2”);
/*$(本)+'';
$(this.hide())
.insertAfter(“#标题”)
.向下滑动(1000)*/
});
返回false;
});
});
在这一点上,我只是想让“test2”警报框显示出来,这就是为什么下面的代码被注释掉了。目前,“test1”警报框是唯一显示的警报框,这意味着“test2”警报线永远不会被击中。你的想法

下面是我的contact.htm文件中的代码片段

<div id="contact_container">
    <div id="contact">
        <p>
        <strong>NAME</strong>: My Name<br/>
        <strong>EMAIL</strong>: My Email<br/>
        <strong>SKYPE</strong>: My Skype Handle<br/>
        <strong>ADDRESS</strong>: My Address<br/>
        </p>        
    </div><!--end contact-->
</div><!--end contact_container-->


名字:我的名字
电子邮件:我的电子邮件
SKYPE:我的SKYPE手柄
地址:我的地址


非常感谢您的帮助

您使用不正确的选择器语法调用$.load,选择器不是HTML字符串,它必须符合以下设置的语法规则:

$('a#contact_link')。悬停(函数()
{
警报(“test1”);
$('div#contact#u container').load('contact.htm#contact',function()
{
警报(“test2”);
/*$(本)+'';
$(this.hide())
.insertAfter(“#标题”)
.向下滑动(1000)*/
});
返回false;
});

选择器可能是原因

$(function()
{
    $('a#contact_link').hover(function() 
    {
        alert('test1'); 
        $('#contact_container').load('contact.htm', function() 
        {
            alert('test2');
            /*$(this) + '</div>';
            $(this).hide()
                .insertAfter('#header')
                .slideDown(1000)  */  
        });

        return false;
    });
});
$(函数()
{
$('a#contact_link')。悬停(函数()
{
警报(“test1”);
$('#contact_container').load('contact.htm',function()
{
警报(“test2”);
/*$(本)+'';
$(this.hide())
.insertAfter(“#标题”)
.向下滑动(1000)*/
});
返回false;
});
});
我认为您的#contact#u容器选择器不太符合犹太标准。在JQuery站点上查看选择器doco()。我觉得这样可能会好一点:

$(function()
{
$('a#contact_link').hover(function() 
{
    alert('test1'); 
    $('#contact_container').load('contact.htm #contact', function() 
    {
        alert('test2');
        /*$(this) + '</div>';
        $(this).hide()
            .insertAfter('#header')
            .slideDown(1000)  */  
    });

    return false;
});
});
$(函数()
{
$('a#contact_link')。悬停(函数()
{
警报(“test1”);
$('#contact_container')。加载('contact.htm#contact',函数()
{
警报(“test2”);
/*$(本)+'';
$(this.hide())
.insertAfter(“#标题”)
.向下滑动(1000)*/
});
返回false;
});
});

非常感谢,尽管它似乎仍然不起作用。还有其他想法吗?请注意,最好将大括号放在函数()的同一行。原因是Javascript执行分号插入。参考:我从来没有遇到过把花括号放在下一行的问题。@ChaosPandion-到目前为止你一定很幸运!将大括号放在同一行可以确保在插入分号时不会出现任何问题,这可能是非常棘手的错误。对于风格上的一个小变化,这是值得的。非常感谢,尽管这似乎也不起作用。不知道这里发生了什么。。。
$(function()
{
$('a#contact_link').hover(function() 
{
    alert('test1'); 
    $('#contact_container').load('contact.htm #contact', function() 
    {
        alert('test2');
        /*$(this) + '</div>';
        $(this).hide()
            .insertAfter('#header')
            .slideDown(1000)  */  
    });

    return false;
});
});