เปิด URL ในหน้าต่างใหม่ด้วย JavaScript


131

ฉันกำลังสร้าง "ปุ่มแชร์" เพื่อแชร์เพจปัจจุบัน ฉันต้องการใช้ URL ของหน้าปัจจุบันและเปิดในหน้าต่างใหม่ ฉันมีส่วน URL ปัจจุบันใช้งานได้ แต่ดูเหมือนว่าส่วนถัดไปใช้งานไม่ได้

ฉันกำลังดิ้นรนกับไวยากรณ์ width=520, height=570ผมอยากจะระบุขนาดของหน้าต่างใหม่

สิ่งที่ต้องการ:

<a target="_blank"
   href="https://www.linkedin.com/cws/share?mini=true&amp;url=[sub]" 
   onclick="this.href = this.href.replace('[sub]',window.location)">
    LinkedIn
</a>

ความคิดใด ๆ ?


คำตอบ:


220

ใช้window.open():

<a onclick="window.open(document.URL, '_blank', 'location=yes,height=570,width=520,scrollbars=yes,status=yes');">
  Share Page
</a>

สิ่งนี้จะสร้างลิงค์ชื่อShare Pageซึ่งจะเปิด url ปัจจุบันในหน้าต่างใหม่ที่มีความสูง 570 และกว้าง 520


วิธีตั้งค่าความสูงและความกว้างของหน้าต่างเป็นศูนย์ถ้าฉันตั้งค่าเป็นศูนย์มันจะแสดงแบบเต็มหน้าจอ
Akshatha Srinivas

เราจะเปิดเป็นหน้าต่างปกติแทนที่จะเป็นหน้าต่างป๊อปอัปได้อย่างไร เนื่องจากไม่สามารถเปิดแท็บใหม่ได้
Ashok kumar Ganesan

@AkshathaSrinivas ความสูงขั้นต่ำคือ 100
Oscar Acevedo

57

แค่ใช้window.open()ฟังก์ชัน? พารามิเตอร์ที่สามช่วยให้คุณระบุขนาดหน้าต่าง

ตัวอย่าง

var strWindowFeatures = "location=yes,height=570,width=520,scrollbars=yes,status=yes";
var URL = "https://www.linkedin.com/cws/share?mini=true&amp;url=" + location.href;
var win = window.open(URL, "_blank", strWindowFeatures);

shiplu.mokadd.im นั่นดูเหมือนจะเป็นสิ่งที่ฉันต้องการ แต่ฉันไม่แน่ใจว่ามันไปไหน
Mark Mitchell

2
@MarkMitchell หากคุณไม่สนใจเกี่ยวกับมาตรฐานการเข้ารหัส - ลงในonclickแอตทริบิวต์ ตัวเลือกที่ดีกว่าเล็กน้อยคือการสร้างฟังก์ชันที่คุณเรียกใช้จากไฟล์onclick. ใช้getElementByIdแล้วaddEventListenerยังสะอาดกว่า การใช้ jQuery เพื่อให้ได้ไวยากรณ์ที่สั้นลง (และคุณสมบัติอื่น ๆ + ปลั๊กอินมากมาย) ก็ได้รับความนิยมเช่นกัน
John Dvorak

พารามิเตอร์ตัวที่ 4 นั้นเป็นอย่างไร? ดูเหมือนว่าอันดับ 3 สำหรับฉัน ฉันพลาดอะไรไปรึเปล่า?
CoderDennis

@CoderDennis ดีจับ. ซ่อมมัน.
Shiplu Mokaddim

สวัสดีฉันจะเรียกเหตุการณ์ปิดหน้าต่างได้อย่างไร
Dilakshan Sooriyanathan

2

อย่าสับสนถ้าคุณไม่ให้ strWindowFeatures ใด ๆ มันจะเปิดในแท็บใหม่

window.open('https://play.google.com/store/apps/details?id=com.drishya');
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.