我使用了this中的代码制作了一个简单的应用程序,并在工人沙箱MTurk站点上对其进行了测试。当使用答案中显示的代码时,它可以完美工作,但是如果我尝试创建一个对象并将函数和变量放置在该对象中,则这些按钮在沙盒站点上将不起作用,但在打开.html文件时将起作用浏览器。此外,添加注释将产生相同的效果。我的代码是这样的:
<?xml version="1.0"?>
<HTMLQuestion xmlns="http://mechanicalturk.amazonaws.com/AWSMechanicalTurkDataSchemas/2011-11-11/HTMLQuestion.xsd">
<HTMLContent><![CDATA[
<!DOCTYPE html>
<html>
<head>
<style>
#thediv {
align-self:flex-start
margin:0 auto;
height:1050px;
width:750px;
overflow:auto;
}
img {
position: static;
left: 50%;
top: 50%;
}
</style>
</head>
<body>
<input type='button' value ='-' onclick='zoom(0.5);'/>
<input type='button' value ='+' onclick='zoom(2);'/>
<div id="thediv">
<img id="pic" src="http://upload.wikimedia.org/wikipedia/commons/d/de/Nokota_Horses_cropped.jpg"/>
</div>
<script type="text/javascript">
var zoomLevel=1;
var maxZoomLevel=2;
var minZoomLevel=1;
function zoom(zm) {
var img=document.getElementById("pic");
if(zm > 1){
if(zoomLevel < maxZoomLevel){
zoomLevel++;
}else{
return;
}
}else if(zm < 1){
if(zoomLevel > minZoomLevel){
zoomLevel--;
}else{
return;
}
}
wid = img.width;
ht = img.height;
img.style.width = (wid*zm)+"px";
img.style.height = (ht*zm)+"px";
}
</script>
</body>
</html>
]]>
</HTMLContent>
<FrameHeight>450</FrameHeight>
</HTMLQuestion>
是否有某些原因可以在浏览器中正常运行,但在MTurk沙箱站点中却无法正常运行?
最佳答案
我刚刚测试过创建这样的HIT,它对我有用。
与JavaScript无关,请注意,您将需要至少包含一个命名输入(例如),以便工人提交HIT。
您正在使用哪种浏览器进行测试?