ค้นหาเว็บไซต์

html - ฉันจะเปิด URL ในหน้าต่างใหม่บน Safari ของ iPhone ได้อย่างไร


ทุกครั้งที่ฉันพยายามเปิด URL ด้วย window.open() จะไม่มีหน้าต่างใดเปิดขึ้น ดังนั้นฉันจึงลองวิธีนี้

<input
  id="googleLink"
  onclick="window.open('https://www.google.com', '_blank');"
  style="display: none"
>

และฉันพยายามที่จะคลิกมันด้วย Typescript

this.googleLink = document.getElementById("googleLink") as HTMLElement;
this.googleLink.click();

และอ่านนี่

window.open(url, '_blank'); ใช้งานไม่ได้บน iMac/Safari

แต่ไม่มีอะไรช่วยได้เลย ฉันไม่ได้รันโค้ดของฉันในฟังก์ชันแบบอะซิงค์ ฉันควรทำอย่างไรดี? ฉันมี iPhone 11 และ 7 และทั้งคู่ก็ไม่ทำงาน มันทำงานได้ดีบนแอนดรอยด์และพีซี ฉันต้องการให้ URL ถูกเปิดในหน้าต่างใหม่

ฉันจำเป็นต้องทำสิ่งนี้ด้วย onClick เนื่องจากฉันกำลังใช้ pixi js และมันเป็นตัวคอนเทนเนอร์ของ pixi ที่ถูกคลิก

การตั้งค่า href ก็จะไม่ช่วยเช่นกัน เพราะฉันต้องการให้หน้าเปิดในแท็บใหม่

คำตอบ #1

สิ่งนี้ควรใช้งานได้บน Safari ด้วยเช่นกัน แต่คุณสามารถเพิ่มเป้าหมายให้กับลิงก์โดยการเพิ่ม target="_blank" ซึ่งจะเปิดลิงก์ในแท็บใหม่และควรเปิดในหน้าต่างใหม่บน Safari ด้วย นี่คือตัวอย่าง:

<a href="https://example.com" target="_blank">Link text.</a>

ในกรณีของคุณ ให้ห่อข้อมูลนำเข้าด้วยลิงก์:

 <input
  id="googleLink"
  style="display: none"
>

ถ้าคุณไม่อยากทำสิ่งนี้ด้วย HTML และต้องการใช้ฟังก์ชัน onclick แทน คุณก็สามารถใช้ onclick="location.href='https://example.com'" ได้เช่นกัน

คำตอบ #2

คุณสามารถลองตามด้านล่างนี้

    <canvas id="myCanvas" width="200" height="100" style="border: 1px solid #000;" onclick="myFunction('thisURL')"></canvas>


  <script>
    function myFunction(url) {

      window.open(url, '_blank').focus();

    }
  </script>

บทความที่เกี่ยวข้อง