显示XML文件中的随机问题和答案

时间:2014-04-10 16:02:17

标签: javascript jquery xml random

我正在尝试构建单页HTML应用,以随机顺序显示问题和答案。

这是所需的功能:

  1. 显示XML文件中的随机问题。
  2. 用户单击页面上的按钮,问题将替换为XML文件中的相关答案。
  3. 重复用户点击(最好是相同的)按钮和步骤1-2。但是,我希望新问题只是伪随机的:在XML文件中的所有其他问题都已显示之前,用户不应在一个会话期间再次看到相同的问题。
  4. 因为我正在努力实现用户体验之类的移动应用,所以我不希望在初始页面加载后发生任何页面重新加载,但是当用户点击按钮时,应立即显示Q& As。

    我是否更正确,只能使用JavaScript / jQuery?如果需要,我也可以使用PHP,但纯JS实现会更有趣。

    如果有人能给我一些指导如何解决这个问题,我将非常感激。

1 个答案:

答案 0 :(得分:0)

假设您的按钮具有类“按钮”,则在带有“问题”类的div上显示问题并且您将xml保存在变量上,让我们说问题,以下jQuery代码应该可以做到这一点

var q;
$( '.button' ).click( function(){
    if( q == false ){
        q = $( questions ).sort( function(){
            return Math.random() > 0.5
        } ).first();
        $( '.question' ).text( q.children( 'question' ).text() );
    }
    else{
        $( '.question' ).text( q.children( 'answer' ).text() );
        $( questions ).first().remove();
        q = false;
    }
} );

我认为你的xml看起来像这样:

<entry>
    <question>Here lies a question.</question>
    <answer>And here is the answer!</answer>
</entry>
<entry>
    <question>Here lies another question.</question>
    <answer>And here is the answer!</answer>
</entry>