- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
.cell 类是井字棋盘表中的 9 个单元格。单击 X 和 O 一直有效,但我正在尝试检查并仅在单元格尚未使用时才允许和 X 或 O。
我尝试过使用 JQuery 数据属性,使用键和值,并且只使用值。
$('.cell').on('click', function () {
if (currentTurn === 'X' && (!$(this).data('already-played', 'yes'))) {
$(this).text('X')
$(this).data('already-played', 'yes')
currentTurn = 'O'
} else {
$(this).text('O')
$(this).data('already-played', 'yes')
currentTurn = 'X'
}
对于这样的事情,数据属性是否可行,或者有人会指出如何调整它?
最佳答案
你应该替换:
!$(this).data('already-played', 'yes')
作者:
$(this).data('already-played')!=='yes'
因为当您将两个参数传递给 data()
函数时,它会将第二个参数作为值附加到第一个参数,因此 yes
将受到影响data-already-played
属性。
注意:您应该在此处检查您的逻辑,我建议改用以下条件结构,这样您可以在单元格可用时检查两个选项:
$('.cell').on('click', function () {
if ( $(this).data('already-played')!=='yes' ) {
if( currentTurn === 'X' ){
$(this).text('X')
$(this).data('already-played', 'yes')
currentTurn = 'O'
} else {
$(this).text('O')
$(this).data('already-played', 'yes')
currentTurn = 'X'
}
}else{
alert( 'This cell was already filled.' );
}
});
关于javascript - JQuery 存储数据以便稍后检查,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51752593/
我正在编写一个插件,有一个ajax调用向用户显示数据。 如果用户想在ajax成功时添加一些js?他可以从他的 js 脚本中做到这一点吗,比如定位这个 ajax 成功事件。 例如: $(documen
我有 html 代码,例如 - x 最初插入 div 'insert_calendar_eda_form'。 Javascript代码 calendar_eda_add
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 3 年前。 Improve this qu
我已经使用命令 sudo start myservice 启动了一个 upstart 服务。我想要一种方法,以便稍后我(或任何人)可以检查该服务是否已启动并正在运行。检查它的命令是什么? 最佳答案 找
我是一名优秀的程序员,十分优秀!