ในผลการค้นหาของ Google ใน Firefox หรือ Chrome ฉันได้รับ URL ที่ผ่าน Google และไม่ตรงไปยังเว็บไซต์เป้าหมาย ตัวอย่างเช่นที่
http://www.google.com/search?q=foo
ผลลัพธ์แรกคือ
ฉันไม่สนใจจริง ๆ ว่า Google กำลังติดตามสิ่งที่ฉันคลิกและฉันไม่สนใจเกี่ยวกับทิศทางพิเศษเมื่อฉันคลิกที่ผลลัพธ์ (แม้ว่าทั้งคู่จะเป็นข้อกังวล) แต่ฉันคิดว่ามันน่ารำคาญที่ฉันไม่สามารถคัดลอกผลลัพธ์ได้โดยเพียงคลิกขวาที่ลิงก์และเลือก“ คัดลอกที่อยู่ลิงก์” (ฉันต้องการได้ผลลัพธ์จริงไม่ใช่การเปลี่ยนเส้นทางของ Google ไป)
ฉันต้องการ URL โดยตรงhttp://en.wikipedia.org/wiki/Foobarอย่างน้อยก็เพื่อวัตถุประสงค์ในการคัดลอกวางใน Firefox และ Chrome
พฤติกรรมของ Google เปลี่ยนไปหลายครั้ง:
- เมื่อผมถามคำถามนี้ในเบราว์เซอร์โดย Javascript คุณมี URL ที่โดยตรงในผล: http://en.wikipedia.org/wiki/Foobar เพิ่มทางอ้อมผ่าน Javascript
- ในเวลาต่อมา Google ได้เปลี่ยนเพื่อแสดงผลลัพธ์ทางอ้อมในเบราว์เซอร์ทั้งหมด
ตั้งแต่ 2012-09-04 ดูเหมือนว่า:
- ในเบราว์เซอร์ที่ไม่มี JS HTML ยังคงมีผลลัพธ์ทางอ้อม
- ในเบราว์เซอร์ที่มีการสนับสนุน JS (อย่างน้อยใน Firefox และ Chrome ล่าสุด) HTML มีผลลัพธ์โดยตรงใน
href
แอตทริบิวต์ แต่มีonmousedown
แอตทริบิวต์ที่เรียกใช้rwt
ฟังก์ชันที่เขียนลิงค์ใหม่ คุณเห็นลิงก์โดยตรงเมื่อคุณโฮเวอร์ แต่คุณจะได้รับลิงค์ทางอ้อมเช่นลิงค์ด้านบนเมื่อคุณคลิกหรือคัดลอกวาง
mousedown
เหตุการณ์และเปลี่ยนลิงค์ไปสู่การเปลี่ยนเส้นทางหากevent.button !== 2
(2 คลิกขวา)