- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个棋盘游戏,当用户点击其中一个方框时,它会翻转并显示字母。我想在用户单击而不是字母时显示图像。我有一个包含所有字母的 array
,但是当替换为 imageurl
时,它只显示 url
而不是图像。我会将 html、css 和 js
粘贴到下面。
var memory_array = ["./naruto.gif ", "A", "B", "B", "C", "C", "D", "D"];
var memory_values = [];
var memory_tile_ids = [];
var tiles_flipped = 0;
Array.prototype.memory_tile_shuffle = function() {
var i = this.length,
j,
temp;
while (--i > 0) {
j = Math.floor(Math.random() * (i + 1));
temp = this[j];
this[j] = this[i];
this[i] = temp;
}
};
function newBoard() {
tiles_flipped = 0;
var output = "";
memory_array.memory_tile_shuffle();
for (var i = 0; i < memory_array.length; i++) {
output +=
'<div id="tile_' +
i +
'" onclick="memoryFlipTile(this,\'' +
memory_array[i] +
"')\"></div>";
}
document.getElementById("memory_board").innerHTML = output;
}
function memoryFlipTile(tile, val) {
//if the title is empty and array = 0 then the rest of code will perform
if (tile.innerHTML == "" && memory_values.length < 2) {
//the tile selected will have a white background and the val will be produced
tile.style.background = "#FFF";
tile.innerHTML = val;
//if the array equal = 0
if (memory_values.length == 0) {
//push the val and the title id to their respective arrays
memory_values.push(val);
memory_tile_ids.push(tile.id);
//if the array equal = 1
} else if (memory_values.length == 1) {
//push the val and the title id to their respective arrays
memory_values.push(val);
memory_tile_ids.push(tile.id);
//if memory_values values are the same
if (memory_values[0] == memory_values[1]) {
tiles_flipped += 2;
// Clear both arrays
memory_values = [];
memory_tile_ids = [];
// Check to see if the whole board is cleared
if (tiles_flipped == memory_array.length) {
alert("Board cleared... generating new board");
document.getElementById("memory_board").innerHTML = "";
newBoard();
}
} else {
// if the two flip tiles aren't of the same value
function flip2Back() {
// Flip the 2 tiles back over
var tile_1 = document.getElementById(memory_tile_ids[0]);
var tile_2 = document.getElementById(memory_tile_ids[1]);
tile_1.style.background = "orangered";
tile_1.innerHTML = "";
tile_2.style.background = "orangered";
tile_2.innerHTML = "";
// Clear both arrays
memory_values = [];
memory_tile_ids = [];
}
setTimeout(flip2Back, 700);
}
}
}
}
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="css/style.css">
<script src="app.js"></script>
</head>
<body>
<div id="memory_board"> </div>
<script>
newBoard();
</script>
</body>
</html>
<style>
div#memory_board {
background: #CCC;
border: #999 1px solid;
width: 800px;
height: 540px;
padding: 24px;
margin: 0px auto;
}
div#memory_board>div {
background: orangered;
border: #000 1px solid;
width: 71px;
height: 71px;
float: left;
margin: 10px;
padding: 20px;
font-size: 64px;
cursor: pointer;
text-align: center;
}
</style>
最佳答案
您可以创建新图像并从图像数组中设置 src 值。同时设置宽度和高度。
var img= new Image();
img.src = val;
img.width="50";
img.height="50";
tile.appendChild(img);
请看下面的片段:
div#memory_board {
background: #CCC;
border: #999 1px solid;
width: 800px;
height: 540px;
padding: 24px;
margin: 0px auto;
}
div#memory_board>div {
background: orangered;
border: #000 1px solid;
width: 71px;
height: 71px;
float: left;
margin: 10px;
padding: 20px;
font-size: 64px;
cursor: pointer;
text-align: center;
}
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<div id="memory_board"> </div>
<script>
var memory_array = ["http://www.clker.com/cliparts/b/6/1/0/124223379411527084631_Train_(1967-1979).svg.med.png", "http://www.clker.com/cliparts/b/6/1/0/124223379411527084631_Train_(1967-1979).svg.med.png", "http://www.clker.com/cliparts/Y/y/T/n/Z/Q/number-2-md.png", "http://www.clker.com/cliparts/Y/y/T/n/Z/Q/number-2-md.png", "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQo95Lf_9XG0mf3Tb_lfMDUDXiywIdpiiCb5jUSTyOi5ACJXa3C6w", "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQo95Lf_9XG0mf3Tb_lfMDUDXiywIdpiiCb5jUSTyOi5ACJXa3C6w", "http://www.clker.com/cliparts/K/w/R/r/V/Z/number-4-hi.png", "http://www.clker.com/cliparts/K/w/R/r/V/Z/number-4-hi.png"];
var memory_values = [];
var memory_tile_ids = [];
var tiles_flipped = 0;
Array.prototype.memory_tile_shuffle = function() {
var i = this.length,
j,
temp;
while (--i > 0) {
j = Math.floor(Math.random() * (i + 1));
temp = this[j];
this[j] = this[i];
this[i] = temp;
}
};
function newBoard() {
tiles_flipped = 0;
var output = "";
memory_array.memory_tile_shuffle();
for (var i = 0; i < memory_array.length; i++) {
output +=
'<div id="tile_' +
i +
'" onclick="memoryFlipTile(this,\'' +
memory_array[i] +
"')\"></div>";
}
document.getElementById("memory_board").innerHTML = output;
}
function memoryFlipTile(tile, val) {
//if the title is empty and array = 0 then the rest of code will perform
if (tile.innerHTML == "" && memory_values.length < 2) {
//the tile selected will have a white background and the val will be produced
tile.style.background = "#FFF";
var img= new Image();
img.src = val;
img.width="50";
img.height="50";
tile.appendChild(img);
//if the array equal = 0
if (memory_values.length == 0) {
//push the val and the title id to their respective arrays
memory_values.push(val);
memory_tile_ids.push(tile.id);
//if the array equal = 1
} else if (memory_values.length == 1) {
//push the val and the title id to their respective arrays
memory_values.push(val);
memory_tile_ids.push(tile.id);
//if memory_values values are the same
if (memory_values[0] == memory_values[1]) {
tiles_flipped += 2;
// Clear both arrays
memory_values = [];
memory_tile_ids = [];
// Check to see if the whole board is cleared
if (tiles_flipped == memory_array.length) {
alert("Board cleared... generating new board");
document.getElementById("memory_board").innerHTML = "";
newBoard();
}
} else {
// if the two flip tiles aren't of the same value
function flip2Back() {
// Flip the 2 tiles back over
var tile_1 = document.getElementById(memory_tile_ids[0]);
var tile_2 = document.getElementById(memory_tile_ids[1]);
tile_1.style.background = "orangered";
tile_1.innerHTML = "";
tile_2.style.background = "orangered";
tile_2.innerHTML = "";
// Clear both arrays
memory_values = [];
memory_tile_ids = [];
}
setTimeout(flip2Back, 700);
}
}
}
}
newBoard();
</script>
</body>
</html>
也可以测试一下here
关于javascript - 图片网址显示在图片应在的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53194344/
我正在使用 MEAN 堆栈创建一个应用程序,该堆栈有大量表单数据条目,这些数据条目会从经过身份验证的用户和匿名用户保存到数据库中。 我应该在堆栈的哪个位置创建所有验证规则?它们应该在 AngularJ
当此时在 IOS 设备上收到通知时,应更改角标(Badge)并应在打开应用程序之前设置角标(Badge)。 我检查了这个 onNotificationOpen() 方法。但是,当我点击通知时,它会调用
我的主页-菜单-点“软件”如果你点击它应该保持打开状态! 查看我的 Test-Homepage ! 我已经测试过将“li:focus”和“li:active”添加到我的最低 CSS 标签,但没有任何效
加载页面时,应在 jquery mobile 的弹出窗口中打开一条消息。是否可以。我有以下代码,其中使用按钮,单击弹出窗口将打开,但我在加载页面后直接需要它而不单击任何内容。请有人帮助我,谢谢。
在 Azure AD B2C 预览版中,您可以定义应用程序。然后,每个应用程序都会被赋予一个名称、客户端 ID、应用程序 key 和一些设置,以定义是否包含 Web 应用程序/Web api 以及是否
我有一个巨大的 gl.pxd 文件,其中包含 gl.h、glu.h 和 glut 的所有定义。 h.例如它有这些行: cdef extern from '': ctypedef unsigne
最新版本的 Azure Functions 工具(版本 1.0.9)在启动时生成以下警告: ServicePointManager.DefaultConnectionLimit is set to t
我有一个 xml 文件(applicationCtx-security.xml),其中定义了所有 Spring Security 过滤器和自定义过滤器及其 bean。我需要实现一个自定义过滤器,该过滤
我和我的团队正在编写 REST API,但某些概念仍未完全理解。 在给定资源中:objective/{id}/goal目标是收集 如果消费者试图达到一个不存在的目标,API 将返回状态代码 404 ,
我刚开始学习 Angular。如果我使用 Firebase 进行用户授权,那么使用 Promise 会更好吗?或 Observable ? 如果我尝试通过 Facebook 登录时出现错误,我将如何更
应Content-Type REST API Web 请求中的 header 使用逗号进行格式化,如 RFC 1867 : Content-type: multipart/form-data, bou
我是 Unity 新手。 我有 Rigidbody2D,我想为我的播放器添加常量 velocity。我想知道在 Start 或 Update (或 FixedUpate ) 当我在开始时应用速度时一切
在我的网站上,我想使用 PayPal 发送的 IPN 来处理订单。 在实际发生之前,我想使用 PayPal 开发者网站 (https://developer.paypal.com/developer/
将 Excel 加载项提交到 Office 商店时。 list 文件中应引用哪个版本的 Excel API? 我们经历过因为没有引用最新版本的 Excel API 而被拒绝的经历。但是如果我们的 Ex
很早就提出了一个问题,但没有很好地布局我的代码,整个问题有点困惑,然后当我更改了代码但仍然遇到相同的问题时,问题仍然存在,但是我决定重新-用我的代码提出问题,代码布局更加整洁,这样您就可以看到重要的部
我正在使用它作为网络界面来控制我的c程序,现在我添加了闹钟时间,其中MySQL将获取闹钟时间,我将在我的c中使用它作为输入,而另一个我需要开关闹钟,所以需要下拉框,其中可以选择开关,但它应该在MySQ
csslint 警告回退背景(十六进制或 RGB)应该在 RGBA 背景之前。"evidence="background: rgba(0, 0, 0, 0.8);/* FF3+,Saf3+,Opera
我是一名优秀的程序员,十分优秀!