jQuery内联脚本无法在Firefox 4中运行

时间:2011-06-08 23:51:30

标签: jquery firefox4

我今天下载了Firefox 4,并意识到我的网站没有按预期工作。当我在互联网上寻找答案时,我找到了一些解决方案,要求通过

添加内联脚本

document.write('<script src="path/js/inlineScript.js" type="text/javascript"><\/script>')

我将所有内联代码复制并粘贴到外部文件中,这就是我现在添加内联脚本的方式(在所有浏览器中工作,部分在firefox 4中):从评论中查询标记,我在这里是链接:http://filetaxes4free.com/temporary/index.php

<script language="JavaScript">

    document.write('
        <script src="path/js/inlineScript.js" 
                type="text/javascript">
        <\/script>'
    );

</script>

我正在使用jQuery 1.6.1,jQuery标签(在代码中你可以看到它们被设置为通过不透明度切换旋转和淡入/淡出)一些jQuery正在工作而一些不是;事件鼠标悬停和mouseout不起作用时文件名的更改,以及事件鼠标悬停和mouseout不工作时的动画(这是inlineScript.js文件的内容)

jQuery(document).ready( function() {
    jQuery( "#tabs" ).tabs().tabs({  
        fx: { opacity: 'toggle', duration: 1000 }}
    ).tabs('rotate', 3500, false);

    jQuery("ul#frontModule li a img").live('mouseover mouseout', function() {

        var fileName = jQuery(this).attr('src').search("-active");

        if (event.type == 'mouseover' && fileName == -1 ) {
            jQuery(this).attr("src", jQuery(this).attr("src")
                .replace(".png","-active.png"));
        }
        else {
            jQuery(this).attr("src", jQuery(this).attr("src")
                .replace("-active.png",".png"));
        }
    });

    /* LOGO anitmated text*/

    jQuery( "#logo" ).airport(
        [ 'small business web design', 
            'online marketing', 
            'search engine optimization', 
            'websonalized-com']
    );

    //menu animation

    jQuery('#rightBody .menu li a').live('mouseover mouseout', function(){

        if ( event.type == 'mouseover' ) 
            jQuery(this).animate({ marginLeft: "15px" }, 500 );
        else 
            jQuery(this).animate({marginLeft: "0" }, 500 );
    });

    //css for IE css3pie.com
    if (window.PIE) {

        //jQuery('.rounded').each(function() {
            //PIE.attach(this);
        //});

        jQuery('.roundRightEI').each(function() {
            PIE.attach(this);
        });

    }//end IE scripts
});

我需要做些哪些更改才能让此脚本在Firefox 4中运行

2 个答案:

答案 0 :(得分:0)

尝试以下列方式包含您的脚本,看看是否有所不同。

document.write(unescape("%3Cscript src='path/js/inlineScript.js' type='text/javascript'%3E%3C/script%3E"));

有时脚本中的引号可能会干扰负责加载的声明中包含的引号。

答案 1 :(得分:0)

实际上我需要做的就是在从事件中调用回调时添加“event”这个词。

旧代码:

 jQuery('#rightBody .menu li a').live('mouseover mouseout', function(){

        if ( event.type == 'mouseover' ) 
            jQuery(this).animate({ marginLeft: "15px" }, 500 );
        else 
            jQuery(this).animate({marginLeft: "0" }, 500 );
    });

新代码:

 jQuery('#rightBody .menu li a').live('mouseover mouseout', function(event){

        if ( event.type == 'mouseover' ) 
            jQuery(this).animate({ marginLeft: "15px" }, 500 );
        else 
            jQuery(this).animate({marginLeft: "0" }, 500 );
    });

与HTML5和严格标准有关的东西