可下载的Javascript内容

时间:2014-06-10 01:52:00

标签: javascript

<div class="center"data-role="content" id="content"  >
        <a href="#flappy" data-transition="slide" >Don't Be A Terrorist</a>
        </div>



    <div id="flappy" >
    <center>
    <div id="page">
            <div data-role="header">
            <h1 style="color: white; font-size: 20px;">Don't Be A Terrorist</h1>
            <a data-icon="home" data-rel="back" style="margin-top:2px; background-color: white;">....</a>
        </div>

        <div id="frame" onload="check2()">
        <script>
        function check2(){
        $.get(/flappy.html)
    .done(function() { 
    alert("you have it");
                <p style="color: white; margin-top: 30px;">Dont't be a terrorist is a game where you must manoeuvre a plane through buildings. Be careful not to hit one or be labelled a terrorist. <br> Controls:<br>Hold the screen down, to go up <br> Let go, to go down <br> Don't hit buildings or die</p>
        <a href="flappy.html" data-transition="pop" rel="external"><img src="images/play.png" width="320px" height="320px"></img></a>

    }).fail(function() { 
    alert("Download it now!");
    })
    }
    </script>
    enter code here
        </div>
        </div>
        </center>
    </div>

这是我的游戏网站代码,如果该文件存在,它应该是玩游戏的选项,但如果它没有按钮,他们可以选择下载它。这是我收集的代码!如果可能,我宁愿不使用ajax!非常感谢你!

谢谢! :)

2 个答案:

答案 0 :(得分:1)

onload事件只能用于文档(正文)本身,框架,图像和脚本。

  

如果文件存在,它应该是玩游戏的选项,但如果它没有按钮,他们可以选择下载它。

您可以使用jQuery.ajax success&amp; amp;错误方法:

$(document).ready(function(){
    $.ajax({
        url:'path/to/game.html',
        type:'HEAD',
        success: function() {
            alert('Game exists, add some code.')
        },
        error: function() {
            alert('Download Game !')
        }
    })
})

您还可以使用Plain Javascript检查文件是否存在

function gameExists(url) {
    var http = new XMLHttpRequest();
    http.open('HEAD', url, false);
    http.send();
    return http.status!=404;
}

if(gameExists('path/to/game.html')) {
    alert('Game exists, add some code.');
} else {
    alert('Download Game !');
}

如果您不想使用ajax,可以使用PHP,然后在代码中插入一个javascript变量。

<script type="text/javascript">
    var gameExists = <?php echo file_exists($fileName) ? true : false;?>
</script>

如果您需要将任何HTML附加到框架容器,可以使用 jQuery Append()

$('#frame').append('<a href="#/download">Download</a>');

答案 1 :(得分:0)

不太清楚你的意思:

  

如果文件存在,它应该是玩游戏的选项,但如果它不是一个按钮,他们可以选择下载它。

如果没有要下载的文件,他们会下载什么?无论如何,您可以在支持链接元素的download属性的浏览器中强制下载。目前我相信这只适用于chrome和firefox。

this回答中所述,

var myLink = document.createElement('a');
myLink.href = 'path_to_file_you_want_to_give_them.extension';
myLink.download = 'whatever_you_want_to_call_the_file_that_they_get.extension';
document.body.appendChild(link);
link.click();

基本上,这会创建一个链接,指向要为其提供的文件的下载路径,允许您命名下载,将链接附加到dom,并使用jQuery的click函数强制元素上的click事件。 / p>