我想讓代碼爲我的marzipano項目創建一個數據文件,它使用這個data.js,我不想爲每個項目創建每個鏈接,所以我試圖循環它,但它並沒有打印到我的HTML頁面。我想將其打印爲文本,以便將結果複製並粘貼到我的js文件中,是否有解決我的代碼的方法或更好的方法?Javascript document.write問題循環
PS:我是用JavaScript共小白
預先感謝您
function auto(number){
\t i = 0;
\t while (i < number) {
\t \t //Fist Scene
\t \t if(i === 0){
\t \t \t document.write('
\t \t \t <p>
\t \t \t \t {
\t \t \t \t "id": "0",
\t \t \t \t "name": "0",
\t \t \t \t "levels": [
\t \t \t \t \t {
\t \t \t \t \t "tileSize": 256,
\t \t \t \t \t "size": 256,
\t \t \t \t \t "fallbackOnly": true
\t \t \t \t \t },
\t \t \t \t \t {
\t \t \t \t \t "tileSize": 512,
\t \t \t \t \t "size": 512
\t \t \t \t \t },
\t \t \t \t \t {
\t \t \t \t \t "tileSize": 512,
\t \t \t \t \t "size": 1024
\t \t \t \t \t },
\t \t \t \t \t {
\t \t \t \t \t "tileSize": 512,
\t \t \t \t \t "size": 2048
\t \t \t \t \t }
\t \t \t \t ],
\t \t \t \t "faceSize": 2000,
\t \t \t \t "initialViewParameters": {
\t \t \t \t \t "yaw": -3.0907815953112916,
\t \t \t \t \t "pitch": 0.06648956035942888,
\t \t \t \t \t "fov": 1.5707963267948966
\t \t \t \t },
\t \t \t \t "linkHotspots": [
\t \t \t \t \t {
\t \t \t \t \t "yaw": -3.128953846954726,
\t \t \t \t \t "pitch": 0.47317799909128944,
\t \t \t \t \t "rotation": 0,
\t \t \t \t \t "target": "1" \t \t
\t \t \t \t \t }
\t \t \t \t ],
\t \t \t \t "infoHotspots": []
\t \t \t \t },</p>
\t \t \t \t ')
\t \t }
\t \t
\t \t //Last Scene
\t \t else if (i === number){
\t \t \t document.write('
\t \t \t <p>
\t \t \t {
\t \t \t "id": "'i'",
\t \t \t "name": "'i'",
\t \t \t "levels": [
\t \t \t \t {
\t \t \t \t "tileSize": 256,
\t \t \t \t "size": 256,
\t \t \t \t "fallbackOnly": true
\t \t \t \t },
\t \t \t \t {
\t \t \t \t "tileSize": 512,
\t \t \t \t "size": 512
\t \t \t \t },
\t \t \t \t {
\t \t \t \t "tileSize": 512,
\t \t \t \t "size": 1024
\t \t \t \t },
\t \t \t \t {
\t \t \t \t "tileSize": 512,
\t \t \t \t "size": 2048
\t \t \t \t }
\t \t \t ],
\t \t \t "faceSize": 2000,
\t \t \t "initialViewParameters": {
\t \t \t \t "yaw": -3.1332154632455715,
\t \t \t \t "pitch": 0.062442602034723294,
\t \t \t \t "fov": 1.5707963267948966
\t \t \t },
\t \t \t "linkHotspots": [
\t \t \t \t {
\t \t \t \t "yaw": 0.008275683165861025,
\t \t \t \t "pitch": 0.3876084470351344,
\t \t \t \t "rotation": 0,
\t \t \t \t "target": "'i-1'"
\t \t \t \t }
\t \t \t ],
\t \t \t "infoHotspots": []
\t \t \t }</p>'
\t \t \t)
\t \t }
\t \t
\t \t //Actual loop
\t \t else if (i < number){
\t \t \t document.write('
\t \t \t {
\t \t \t "id": "i",
\t \t \t "name": "i",
\t \t \t "levels": [
\t \t \t \t {
\t \t \t \t "tileSize": 256,
\t \t \t \t "size": 256,
\t \t \t \t "fallbackOnly": true
\t \t \t \t },
\t \t \t \t {
\t \t \t \t "tileSize": 512,
\t \t \t \t "size": 512
\t \t \t \t },
\t \t \t \t {
\t \t \t \t "tileSize": 512,
\t \t \t \t "size": 1024
\t \t \t \t },
\t \t \t \t {
\t \t \t \t "tileSize": 512,
\t \t \t \t "size": 2048
\t \t \t \t }
\t \t \t ],
\t \t \t "faceSize": 2000,
\t \t \t "initialViewParameters": {
\t \t \t \t "yaw": -3.0859786632885857,
\t \t \t \t "pitch": 0.058860826755053,
\t \t \t \t "fov": 1.5707963267948966
\t \t \t },
\t \t \t "linkHotspots": [
\t \t \t \t {
\t \t \t \t "yaw": 0.007751782217697567,
\t \t \t \t "pitch": 0.39202518148107757,
\t \t \t \t "rotation": 0,
\t \t \t \t "target": "'i-1'"
\t \t \t \t },
\t \t \t \t {
\t \t \t \t "yaw": -3.1285088198075375,
\t \t \t \t "pitch": 0.48530966110218543,
\t \t \t \t "rotation": 0,
\t \t \t \t "target": "'i+1'"
\t \t \t \t }
\t \t \t ],
\t \t \t "infoHotspots": []
\t \t \t },<br>
\t \t \t ')
\t \t }
\t
\t \t }
\t \t \t
\t \t
\t }
}
auto(13);
<html>
\t <head>
\t </head>
\t <body>
\t \t <script src="auto.js"></script> \t
\t \t
\t </body>
</html>
一個錯誤我立刻看到的是,JavaScript並沒有允許多個線串,除非你使用反引號 –
另外,還要確保你增加'裏面你'while'否則你會i'得到一個無限循環。 – Damian
所以我試過這個:https://gist.github.com/thriskel/3209b4d969131451ee5e5184775a0ad9,但它提供了一個錯誤「Uncaught SyntaxError:missing)」之後「document.write('」 – Thriskel