javascript - 从二维数组中提取两个值但只显示一个

标签 javascript jquery html css arrays

您好,我试图只提取我构建的数组中的第一个词——然后点击“翻转”——显示它与之配对的反义词。即拉动 0 和 1 但只显示 0 直到单击按钮(然后将 0 切换为 1)。下面的代码工作正常,但截至目前,它正在将这两个词拉出并附加到#input。

这是我的 JS:

var words = [];
words[0] = ['Budding','Accomplished']; 
words[1] = ['Curious','Certain']; 
words[2] = ['Realistic','Idealistic']; 
words[3] = ['Practicle','Imaginative']; 

function random_sort () {
      return (0.5 - Math.random() );
}

words.sort(random_sort);

var i = 0,
    n = words.length;

$("#forward").data('dir', 1);
$("#back").data('dir', -1);

$("#forward, #back").on('click', function() {
    i = (i + $(this).data('dir') + n) % n;
    $("#input").hide().html(words[i]).fadeIn(100);
    $(words[i][1]).hide();
});

$("#back").trigger('click');

和我的 html:

<object id="back" type="image/svg+xml" data="images/arrow.svg"></object>
<p id="input"></p>
<object id="forward" type="image/svg+xml" data="images/arrow.svg"></object>

<img id="flip" src="images/fliptext.svg">

非常感谢任何帮助。谢谢!

最佳答案

你的问题是 $("#input2").hide().html(words[i]).fadeIn(100); 特别是 html(words[i]) 等于 html(['Budding','Accomplished']) 并将在将数组添加到 html 之前连接数组。

将其更改为 $("#input2").hide().html(words[i][0]).fadeIn(100); 其中 words[i][ 0] 是专门选择数组中第一个索引处的单词。

var words = [];
words[0] = ['Budding','Accomplished']; 
words[1] = ['Curious','Certain']; 
words[2] = ['Realistic','Idealistic']; 
words[3] = ['Practicle','Imaginative']; 
 
var i=0;
$("#input").hide().html(words[i]).fadeIn(100);
$("#input2").hide().html(words[i][0]).fadeIn(100);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<strong>Wrong</strong><div id="input"> </div><br>
<strong>Right</strong><div id="input2"> </div>

关于javascript - 从二维数组中提取两个值但只显示一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38886151/

相关文章:

php - 从服务器保存一个变量

javascript - 获取元素相对于父div Jquery的xy位置

javascript - 如何将事件类添加到基于每个页面中的 URL 的导航菜单

javascript - Meteor js Iron 路由器 - 登录后如何重定向?

javascript - 如何检查 Parse 用户是否从客户端 javascript 登录?

javascript - Laravel 在 ajax 成功后追加数据

html - Aptana 不知道 HTML5 中的 <main> 标签?

javascript - 如何在窗口中弹出?

javascript - 从 jQuery 到 JavaScript 的转换

jQuery - 如何编写一个自动调用 future 元素的插件