IE javascript麻烦

时间:2013-07-30 08:56:34

标签: javascript html internet-explorer

我的网站主要是为使用SWFAddress的全闪存而设计的,因此所有链接都以哈希“#”符号结尾(例如:www.site.com /#/ folder / image.jpg)。

我想将Flash切换为完整的HTML并且不要使任何链接死亡(因为我在Web上留下了很多链接),所以我创建了htaccess文件来控制崩溃请求。 问题在于哈希“#”符号,因为它无法由htaccess文件处理。我在我的第一个index.php。

之上创建了一段javascript代码

因此,在我加载任何控制器之前,index.php文件以javascript开头,以删除哈希符号并重定向回没有“#”的网站:

<script type="text/javascript">

var link = location.href;
m = removeHash(link);

if (link != m) { 
    document.location.href = m;
}

function removeHash(l) {
    var unhashedUrl = l;
    if (l.indexOf("#") > -1) {
        var url_pieces = l.split('/');
        var request = url_pieces[url_pieces.length-1];
        if(request.indexOf("#") == -1 && request.toLowerCase().indexOf(".jpg") > -1){
            unhashedUrl = l.replace('#', "gallery");
        }else{
            unhashedUrl = l.replace('#/', "");
        }
    }
    return unhashedUrl;
}

</script>

然后所有的PHP开始......

Chrome,Firefox,Opera,Safari,移动浏览器......它们都完美无瑕。但IE(测试IE8和IE9)再次疯狂。看起来IE以后不会触发任何JS。当然,当我从索引控制器中删除JS时,IE工作也很好。

任何建议我应该如何实现这一目标?

0 个答案:

没有答案