{"id":11538,"date":"2026-08-22T16:30:27","date_gmt":"2026-08-22T13:30:27","guid":{"rendered":"https:\/\/lingualand.gr\/new\/exercises\/a-junior-listening-10\/"},"modified":"2026-08-22T17:02:50","modified_gmt":"2026-08-22T14:02:50","slug":"a-junior-listening-10","status":"publish","type":"page","link":"https:\/\/lingualand.gr\/new\/exercises\/a-junior-listening-10\/","title":{"rendered":"Junior A \u2013 Listening 10"},"content":{"rendered":"<!-- lingualand-listening-access:aj:lesson:start -->\n<div id=\"accessGate-lesson-aj\" class=\"lingualand-listening-access-gate\" style=\"min-height:320px;display:grid;place-items:center;padding:20px;background:#eef3f8;color:#172033;font-family:Arial,sans-serif\"><form id=\"accessForm-lesson-aj\" style=\"width:min(420px,100%);background:#fff;border-radius:14px;padding:24px;box-shadow:0 4px 16px #243a8f22\"><h4 style=\"margin:0 0 10px;color:#243a8f;font-size:1.45rem\">A Junior Listening Access<\/h4><p style=\"margin:0 0 16px\">Enter your access key to open the exercises.<\/p><input id=\"accessKey-lesson-aj\" type=\"password\" autocomplete=\"off\" style=\"width:100%;padding:12px;border:1px solid #aab3c2;border-radius:9px;font-size:1rem\" aria-label=\"Access key\"><button type=\"submit\" style=\"margin-top:14px;width:100%;padding:12px;border:0;border-radius:9px;background:#243a8f;color:white;font-weight:bold;cursor:pointer\">Open exercises<\/button><div id=\"accessMessage-lesson-aj\" style=\"min-height:22px;margin-top:12px;color:#b91c1c;font-weight:bold\" aria-live=\"polite\"><\/div><\/form><\/div><div id=\"exerciseApp-lesson-aj\" hidden><!-- lingualand-listening-exercise:aj:10:start -->\n<div class=\"lingualand-aj-listening-exercise-page\" style=\"max-width:1100px;margin:20px auto;\"><iframe title=\"Junior A \u2013 Listening 10\" srcdoc=\"&lt;!doctype html&gt;\n&lt;html lang=&quot;en&quot;&gt;\n&lt;head&gt;\n&lt;meta charset=&quot;utf-8&quot;&gt;\n&lt;meta name=&quot;viewport&quot; content=&quot;width=device-width,initial-scale=1&quot;&gt;\n&lt;title&gt;Junior A \u2013 Listening 10&lt;\/title&gt;\n&lt;style&gt;\n  *{box-sizing:border-box}\n  :root{\n    --navy:#24446f;\n    --blue:#4f78b8;\n    --pale:#edf4ff;\n    --green:#17723a;\n    --red:#b3261e;\n  }\n  body{\n    margin:0;\n    background:#f5f7fb;\n    color:#20242a;\n    font-family:Arial,Helvetica,sans-serif;\n  }\n  main{max-width:1000px;margin:auto;padding:22px 14px 55px}\n  header,.exercise{\n    background:#fff;\n    border-radius:18px;\n    box-shadow:0 4px 18px rgba(0,0,0,.07);\n  }\n  header{text-align:center;padding:20px;margin-bottom:22px}\n  h1{margin:0;font-size:32px}\n  header p{margin:5px 0 0;color:#315b9b;font-size:20px;font-weight:700}\n  .exercise{padding:18px;margin-bottom:24px}\n  .exercise h2{margin:0 0 4px}\n  .instruction{margin:0 0 16px;color:#5c6673}\n  .question{\n    display:grid;\n    grid-template-columns:70px 1fr;\n    gap:12px;\n    align-items:center;\n    padding:13px 0;\n    border-top:1px solid #e7eaf0;\n  }\n  .question:first-of-type{border-top:0}\n  .play{\n    width:60px;\n    min-height:52px;\n    border:0;\n    border-radius:12px;\n    background:#e8eef9;\n    color:#173b75;\n    font-size:17px;\n    font-weight:800;\n    cursor:pointer;\n  }\n  .play:hover{background:#dbe7f8}\n  .options{display:grid;grid-template-columns:1fr 1fr;gap:10px}\n  .option{\n    position:relative;\n    min-height:54px;\n    padding:12px 14px 12px 48px;\n    border:3px solid #d7dde8;\n    border-radius:13px;\n    background:#fff;\n    color:#222;\n    text-align:left;\n    font-size:18px;\n    line-height:1.3;\n    cursor:pointer;\n  }\n  .option:hover{border-color:#9fb8dd;background:#f8fbff}\n  .option.selected{border-color:var(--blue);background:var(--pale)}\n  .option.correct{border-color:#35a35b;background:#ecf9f0}\n  .option.wrong{border-color:#d9534f;background:#fff0ef}\n  .letter{\n    position:absolute;\n    left:10px;\n    top:50%;\n    transform:translateY(-50%);\n    width:28px;\n    height:28px;\n    border-radius:50%;\n    display:flex;\n    align-items:center;\n    justify-content:center;\n    background:var(--navy);\n    color:#fff;\n    font-weight:900;\n  }\n  .feedback{\n    grid-column:2;\n    min-height:20px;\n    margin-top:-6px;\n    font-weight:700;\n  }\n  .good{color:var(--green)}\n  .bad{color:var(--red)}\n  .controls{\n    display:flex;\n    justify-content:center;\n    gap:12px;\n    margin:28px 0 10px;\n    flex-wrap:wrap;\n  }\n  .controls button{\n    border:0;\n    border-radius:11px;\n    padding:12px 18px;\n    font-size:16px;\n    font-weight:800;\n    cursor:pointer;\n  }\n  .check{background:#263f6b;color:#fff}\n  .reset{background:#e4e7ed;color:#222}\n  #score{text-align:center;font-size:23px;font-weight:800}\n  .help{text-align:center;color:#68717d;margin-top:8px}\n  @media(max-width:650px){\n    h1{font-size:27px}\n    .question{grid-template-columns:58px 1fr}\n    .play{width:52px}\n    .options{grid-template-columns:1fr}\n    .option{font-size:17px}\n  }\n&lt;\/style&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n&lt;main&gt;\n  &lt;header&gt;\n    &lt;h1&gt;Junior A \u2013 Listening 10&lt;\/h1&gt;\n    &lt;p&gt;Present Continuous&lt;\/p&gt;\n  &lt;\/header&gt;\n\n  &lt;div id=&quot;app&quot;&gt;&lt;\/div&gt;\n\n  &lt;div class=&quot;controls&quot;&gt;\n    &lt;button class=&quot;check&quot; type=&quot;button&quot; onclick=&quot;checkAll()&quot;&gt;Check My Answers&lt;\/button&gt;\n    &lt;button class=&quot;reset&quot; type=&quot;button&quot; onclick=&quot;resetAll()&quot;&gt;Start Again&lt;\/button&gt;\n  &lt;\/div&gt;\n  &lt;div id=&quot;score&quot; aria-live=&quot;polite&quot;&gt;&lt;\/div&gt;\n  &lt;div class=&quot;help&quot;&gt;Press \u25b6 to listen. Then choose A or B.&lt;\/div&gt;\n&lt;\/main&gt;\n\n&lt;script&gt;\nconst exercises=[\n  {\n    choices:[\n      [&quot;She is reading a book.&quot;,&quot;She isn't reading a book.&quot;],\n      [&quot;He is sleeping.&quot;,&quot;He isn't sleeping.&quot;],\n      [&quot;You are running fast.&quot;,&quot;You aren't running fast.&quot;],\n      [&quot;It is flying.&quot;,&quot;It isn't flying.&quot;],\n      [&quot;He is swimming.&quot;,&quot;He isn't swimming.&quot;]\n    ],\n    transcripts:[\n      &quot;She isn't reading a book.&quot;,\n      &quot;He is sleeping.&quot;,\n      &quot;You are running fast.&quot;,\n      &quot;It isn't flying.&quot;,\n      &quot;He isn't swimming.&quot;\n    ],\n    answers:[&quot;B&quot;,&quot;A&quot;,&quot;A&quot;,&quot;B&quot;,&quot;B&quot;]\n  },\n  {\n    choices:[\n      [&quot;I am reading a book.&quot;,&quot;I am watching TV.&quot;],\n      [&quot;They are playing at home.&quot;,&quot;They are playing at the park.&quot;],\n      [&quot;We are eating.&quot;,&quot;We are drinking.&quot;],\n      [&quot;It is climbing.&quot;,&quot;It is flying.&quot;],\n      [&quot;He is painting.&quot;,&quot;He is playing.&quot;]\n    ],\n    transcripts:[\n      &quot;I am reading a book.&quot;,\n      &quot;They are playing at home.&quot;,\n      &quot;We are eating.&quot;,\n      &quot;It is flying.&quot;,\n      &quot;He is playing.&quot;\n    ],\n    answers:[&quot;A&quot;,&quot;A&quot;,&quot;A&quot;,&quot;B&quot;,&quot;B&quot;]\n  },\n  {\n    choices:[\n      [&quot;She isn't reading.&quot;,&quot;She is sleeping.&quot;],\n      [&quot;He is eating.&quot;,&quot;He isn't drinking.&quot;],\n      [&quot;They are running.&quot;,&quot;They are swimming.&quot;],\n      [&quot;I am dancing.&quot;,&quot;I am not singing.&quot;],\n      [&quot;We are walking.&quot;,&quot;We are working.&quot;]\n    ],\n    transcripts:[\n      &quot;She is sleeping.&quot;,\n      &quot;He is eating.&quot;,\n      &quot;They are swimming.&quot;,\n      &quot;I am dancing.&quot;,\n      &quot;We are working.&quot;\n    ],\n    answers:[&quot;B&quot;,&quot;A&quot;,&quot;B&quot;,&quot;A&quot;,&quot;B&quot;]\n  }\n];\n\nconst selected={};\nlet preferredVoice=null;\n\nfunction findVoice(){\n  const voices=window.speechSynthesis ? speechSynthesis.getVoices() : [];\n  preferredVoice=\n    voices.find(v=&gt;\/Samantha\/i.test(v.name)) ||\n    voices.find(v=&gt;\/Google US English\/i.test(v.name)) ||\n    voices.find(v=&gt;\/^en[-_]US\/i.test(v.lang)) ||\n    voices.find(v=&gt;\/^en\/i.test(v.lang)) ||\n    null;\n}\n\nif(&quot;speechSynthesis&quot; in window){\n  findVoice();\n  speechSynthesis.onvoiceschanged=findVoice;\n}\n\nfunction speak(sentence){\n  if(!(&quot;speechSynthesis&quot; in window)){\n    alert(&quot;Audio is not supported in this browser.&quot;);\n    return;\n  }\n  speechSynthesis.cancel();\n  const utterance=new SpeechSynthesisUtterance(sentence);\n  utterance.lang=&quot;en-US&quot;;\n  utterance.rate=.78;\n  utterance.pitch=1;\n  utterance.volume=1;\n  if(preferredVoice) utterance.voice=preferredVoice;\n  speechSynthesis.speak(utterance);\n}\n\nfunction choose(exercise,question,letter){\n  selected[`${exercise}_${question}`]=letter;\n  document.querySelectorAll(\n    `.option[data-e=&quot;${exercise}&quot;][data-q=&quot;${question}&quot;]`\n  ).forEach(button=&gt;{\n    button.classList.remove(&quot;selected&quot;,&quot;correct&quot;,&quot;wrong&quot;);\n  });\n  document.querySelector(\n    `.option[data-e=&quot;${exercise}&quot;][data-q=&quot;${question}&quot;][data-l=&quot;${letter}&quot;]`\n  ).classList.add(&quot;selected&quot;);\n  const feedback=document.getElementById(`f_${exercise}_${question}`);\n  feedback.textContent=&quot;&quot;;\n  feedback.className=&quot;feedback&quot;;\n  document.getElementById(&quot;score&quot;).textContent=&quot;&quot;;\n}\n\nfunction render(){\n  const app=document.getElementById(&quot;app&quot;);\n  exercises.forEach((exercise,e)=&gt;{\n    const section=document.createElement(&quot;section&quot;);\n    section.className=&quot;exercise&quot;;\n    section.innerHTML=`\n      &lt;h2&gt;Exercise ${e+1}&lt;\/h2&gt;\n      &lt;p class=&quot;instruction&quot;&gt;Listen and choose A or B.&lt;\/p&gt;\n    `;\n\n    exercise.choices.forEach((choices,q)=&gt;{\n      const row=document.createElement(&quot;div&quot;);\n      row.className=&quot;question&quot;;\n\n      const play=document.createElement(&quot;button&quot;);\n      play.type=&quot;button&quot;;\n      play.className=&quot;play&quot;;\n      play.textContent=`\u25b6 ${q+1}`;\n      play.setAttribute(&quot;aria-label&quot;,`Play Exercise ${e+1}, question ${q+1}`);\n      play.onclick=()=&gt;speak(exercise.transcripts[q]);\n      row.appendChild(play);\n\n      const options=document.createElement(&quot;div&quot;);\n      options.className=&quot;options&quot;;\n      choices.forEach((choice,index)=&gt;{\n        const letter=index===0?&quot;A&quot;:&quot;B&quot;;\n        const button=document.createElement(&quot;button&quot;);\n        button.type=&quot;button&quot;;\n        button.className=&quot;option&quot;;\n        button.dataset.e=e;\n        button.dataset.q=q;\n        button.dataset.l=letter;\n        button.innerHTML=`&lt;span class=&quot;letter&quot;&gt;${letter}&lt;\/span&gt;${choice}`;\n        button.onclick=()=&gt;choose(e,q,letter);\n        options.appendChild(button);\n      });\n      row.appendChild(options);\n\n      const feedback=document.createElement(&quot;div&quot;);\n      feedback.className=&quot;feedback&quot;;\n      feedback.id=`f_${e}_${q}`;\n      feedback.setAttribute(&quot;aria-live&quot;,&quot;polite&quot;);\n      row.appendChild(feedback);\n\n      section.appendChild(row);\n    });\n    app.appendChild(section);\n  });\n}\n\nfunction checkAll(){\n  let correct=0;\n  const total=exercises.reduce((sum,exercise)=&gt;sum+exercise.answers.length,0);\n\n  exercises.forEach((exercise,e)=&gt;{\n    exercise.answers.forEach((answer,q)=&gt;{\n      const choice=selected[`${e}_${q}`]||&quot;&quot;;\n      const feedback=document.getElementById(`f_${e}_${q}`);\n      const buttons=document.querySelectorAll(\n        `.option[data-e=&quot;${e}&quot;][data-q=&quot;${q}&quot;]`\n      );\n      buttons.forEach(button=&gt;button.classList.remove(&quot;correct&quot;,&quot;wrong&quot;));\n\n      if(choice===answer){\n        correct++;\n        feedback.textContent=&quot;\u2713 Correct&quot;;\n        feedback.className=&quot;feedback good&quot;;\n        document.querySelector(\n          `.option[data-e=&quot;${e}&quot;][data-q=&quot;${q}&quot;][data-l=&quot;${choice}&quot;]`\n        ).classList.add(&quot;correct&quot;);\n      }else if(!choice){\n        feedback.textContent=&quot;Please choose A or B.&quot;;\n        feedback.className=&quot;feedback bad&quot;;\n      }else{\n        feedback.textContent=&quot;\u2717 Try again&quot;;\n        feedback.className=&quot;feedback bad&quot;;\n        document.querySelector(\n          `.option[data-e=&quot;${e}&quot;][data-q=&quot;${q}&quot;][data-l=&quot;${choice}&quot;]`\n        ).classList.add(&quot;wrong&quot;);\n      }\n    });\n  });\n  document.getElementById(&quot;score&quot;).textContent=`Score: ${correct} \/ ${total}`;\n}\n\nfunction resetAll(){\n  Object.keys(selected).forEach(key=&gt;delete selected[key]);\n  if(&quot;speechSynthesis&quot; in window) speechSynthesis.cancel();\n  document.querySelectorAll(&quot;.option&quot;).forEach(button=&gt;{\n    button.classList.remove(&quot;selected&quot;,&quot;correct&quot;,&quot;wrong&quot;);\n  });\n  document.querySelectorAll(&quot;.feedback&quot;).forEach(item=&gt;{\n    item.textContent=&quot;&quot;;\n    item.className=&quot;feedback&quot;;\n  });\n  document.getElementById(&quot;score&quot;).textContent=&quot;&quot;;\n  window.scrollTo({top:0,behavior:&quot;smooth&quot;});\n}\n\nrender();\n&lt;\/script&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;\n\" style=\"width:100%;min-height:1850px;border:0;border-radius:8px;background:#f8fafc;display:block;\" loading=\"eager\" allow=\"autoplay\"><\/iframe><\/div>\n<!-- lingualand-listening-exercise:aj:10:end --><\/div><script>(function(){const expectedHash=\"9e5e0cc40bc8b61956d1f9e8c85049db48814fdca55b22a380ccf5073b1406c5\";const storageKey=\"lingualandListeningAccess:aj\";const form=document.getElementById(\"accessForm-lesson-aj\"),keyInput=document.getElementById(\"accessKey-lesson-aj\"),msg=document.getElementById(\"accessMessage-lesson-aj\"),gate=document.getElementById(\"accessGate-lesson-aj\"),app=document.getElementById(\"exerciseApp-lesson-aj\");async function sha256(text){const bytes=new TextEncoder().encode(text);const digest=await crypto.subtle.digest(\"SHA-256\",bytes);return Array.from(new Uint8Array(digest)).map(b=>b.toString(16).padStart(2,\"0\")).join(\"\");}function deny(text){msg.textContent=text;app.hidden=true;gate.style.display=\"grid\";}function allow(){try{sessionStorage.setItem(storageKey,\"1\");}catch(e){} gate.style.display=\"none\";app.hidden=false;keyInput.value=\"\";}try{if(sessionStorage.getItem(storageKey)===\"1\") allow();}catch(e){}form.addEventListener(\"submit\",async function(e){e.preventDefault();const entered=keyInput.value.trim();if(!entered){deny(\"Please enter the access key.\");return;}try{const hash=await sha256(entered);if(hash===expectedHash){allow();}else{deny(\"Incorrect access key.\");}}catch(err){deny(\"Access check is unavailable in this browser.\");}});})();<\/script>\n<!-- lingualand-listening-access:aj:lesson:end -->","protected":false},"excerpt":{"rendered":"<p>A Junior Listening Access Enter your access key to open the exercises. Open exercises<\/p>\n","protected":false},"author":7,"featured_media":0,"parent":9619,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"ngg_post_thumbnail":0,"footnotes":""},"class_list":["post-11538","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/pages\/11538","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/comments?post=11538"}],"version-history":[{"count":1,"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/pages\/11538\/revisions"}],"predecessor-version":[{"id":11569,"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/pages\/11538\/revisions\/11569"}],"up":[{"embeddable":true,"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/pages\/9619"}],"wp:attachment":[{"href":"https:\/\/lingualand.gr\/new\/wp-json\/wp\/v2\/media?parent=11538"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}