if ($("#canvas").css('background-image') == 'url(images/endOfGame.jpg)') {
不起作用。但这样做:
var element = document.getElementById('canvas');
var style = window.getComputedStyle(element);
var imagex = style.getPropertyValue('background-image');
console.log(imagex);
if (imagex === "url(file:///C:/Users/Jack/Documents/myGames/Pong/images/endOfGame.jpg)") {
而这不是:
var element = document.getElementById('canvas');
var style = window.getComputedStyle(element);
var imagex = style.getPropertyValue('background-image');
console.log(imagex);
if (imagex === "url(images/endOfGame.jpg)") {
为什么呢?我必须为我运行游戏的每台计算机更改完整的文件路径代码。不好。
感谢。
答案 0 :(得分:2)
您可以使用indexOf
返回找到的文本的字符位置(0及以上),如果找不到则返回-1:
if (imagex.indexOf("url(images/endOfGame.jpg)") >= 0) {
// yes, string contains that text
}
我更愿意:
if (imagex.indexOf("images/endOfGame.jpg") >= 0) {
// yes, string contains that text
}
忽略url(..)
。以下版本忽略了大小写(大写或小写)的差异:
if (imagex.toUpperCase().indexOf("images/endOfGame.jpg".toUpperCase()) >= 0) {
// yes, string contains that text
}