点击JavaScript
我有这个文件,它允许我有一个多选问卷,点击进行 我该如何用图像来代替文字呢?(还有一个技工,单击[图像]后,会出现下一个问题) 我已经尝试了一些基本的div操作,用f.e的UL/H1设置背景图像,但正如你所预料的,这使我毫无用处 我很好奇这是否是因为“标题”必须是其他内容点击JavaScript,javascript,html,knockout.js,onclick,Javascript,Html,Knockout.js,Onclick,我有这个文件,它允许我有一个多选问卷,点击进行 我该如何用图像来代替文字呢?(还有一个技工,单击[图像]后,会出现下一个问题) 我已经尝试了一些基本的div操作,用f.e的UL/H1设置背景图像,但正如你所预料的,这使我毫无用处 我很好奇这是否是因为“标题”必须是其他内容 var questions = [ { caption: 'Question 1?', a
var questions = [
{
caption: 'Question 1?',
answers: [
{ caption: 'It sucks!' },
{ caption: 'It rules!' }
]
}
正在进行的代码的其余部分可在以下位置找到:
像这样做怎么样: 我所做的是将图像的名称设置为:
var questions = [
{
caption: 'Question 1?',
answers: [
{ caption: 'It sucks!' },
{ caption: 'It rules!' }
]
},
{
caption: 'Question 2?',
answers: [
{ caption: '_62880798_62880797.jpg' },
{ caption: '_62880035_62880034.jpg' }
]
}
];
然后,在:
self.currentQuestion(questions[currentQuestionIndex]);
我添加以下jQuery代码:
$('#lol').find('li').each(function() {
var imgPath = 'http://news.bbcimg.co.uk/media/images/62880000/jpg/';
var imgName = $(this).text();
$(this).html('<img src="'+imgPath+imgName+'" width="20" />');
});
$('lol')。查找('li')。每个(函数(){
var imgPath=http://news.bbcimg.co.uk/media/images/62880000/jpg/';
var imgName=$(this.text();
$(this.html(“”);
});
我使用
li
元素的内容(答案)获取图像的名称,然后用图像标记(
)替换li
元素的内容。这样做怎么样:
我所做的是将图像的名称设置为:
var questions = [
{
caption: 'Question 1?',
answers: [
{ caption: 'It sucks!' },
{ caption: 'It rules!' }
]
},
{
caption: 'Question 2?',
answers: [
{ caption: '_62880798_62880797.jpg' },
{ caption: '_62880035_62880034.jpg' }
]
}
];
然后,在:
self.currentQuestion(questions[currentQuestionIndex]);
我添加以下jQuery代码:
$('#lol').find('li').each(function() {
var imgPath = 'http://news.bbcimg.co.uk/media/images/62880000/jpg/';
var imgName = $(this).text();
$(this).html('<img src="'+imgPath+imgName+'" width="20" />');
});
$('lol')。查找('li')。每个(函数(){
var imgPath=http://news.bbcimg.co.uk/media/images/62880000/jpg/';
var imgName=$(this.text();
$(this.html(“”);
});
我使用
li
元素的内容(答案)获取图像的名称,然后我用图像标签(
)替换li
元素的内容。非常感谢您的回复Dim13i,首先我注意到使用此设置的图像无法显示在“问题1”上-这是否可以修复?第二,我已经谢谢你了吗?哈哈,我也注意到这个设置与答案的输出相冲突,我确实希望那部分至少是文本。有没有办法解决这个问题?我只是想,我可以用一个“点击开始”按钮作为“第一个问题”——这可能是一个便宜的解决方案。像这样?我创建了一个函数setImage()
,并在$(document).ready()
中调用它,然后在与以前相同的位置调用它。你是一个英雄,Dim13i!只需稍微整理一下代码,内联答案并添加第三个问题。从完美到完美的第一步现在是更好的输出响应,尽管有了它,我想我可以为每个答案添加一个新的输出(如果ans1单击,输出x,如果ans 2输出y)~尽管如果我自己无法管理它,我可能应该为此创建一个新线程,比如JS:function q1a1(){document.getElementById(“output1”).innerHTML+='Just 1';}函数q1a2(){document.getElementById(“output1”).innerHTML+='2-5';}函数q1a3(){document.getElementById(“output1”).innerHTML+='6或更多';}
然后是HTML:setImage()
,并在$(document).ready()
中调用它,然后在与以前相同的位置调用它。你是一个英雄,Dim13i!只需稍微整理一下代码,内联答案并添加第三个问题。从完美到完美的第一步现在是更好的输出响应,尽管有了它,我想我可以为每个答案添加一个新的输出(如果ans1单击,输出x,如果ans 2输出y)~尽管如果我自己无法管理它,我可能应该为此创建一个新线程,比如JS:function q1a1(){document.getElementById(“output1”).innerHTML+='Just 1';}函数q1a2(){document.getElementById(“output1”).innerHTML+='2-5';}函数q1a3(){document.getElementById(“output1”).innerHTML+='6或更多';}
然后是HTML: