Chừng nào kịch bản là sau các img
, sau đó:
var youtubeimgsrc = document.getElementById("youtubeimg").src;
Xem getElementById
trong đặc tả DOM.
Nếu tập lệnh là trướcimg
, thì dĩ nhiên img
chưa tồn tại và điều đó không hoạt động. Đây là một trong những lý do tại sao nhiều người khuyên bạn nên đặt kịch bản ở phần cuối của phần tử body
.
Side lưu ý: Nó không quan trọng trong trường hợp của bạn bởi vì bạn đã sử dụng một URL tuyệt đối, nhưng nếu bạn sử dụng một tương URL trong các thuộc tính, như thế này:
<img id="foo" src="/images/example.png">
... thuộc tính được phản ánh src
sẽ là được giải quyết URL — có nghĩa là URL tuyệt đối chuyển thành. Vì vậy, nếu đó là trên trang http://www.example.com
, document.getElementById("foo").src
sẽ cung cấp cho bạn "http://www.example.com/images/example.png"
.
Nếu bạn muốn nội dung của thuộc tính src
là, mà không được giải quyết, bạn sẽ sử dụng getAttribute
thay thế: document.getElementById("foo").getAttribute("src")
. Điều đó sẽ cung cấp cho bạn "/images/example.png"
với ví dụ của tôi ở trên.
Nếu bạn có URL tuyệt đối, giống như URL trong câu hỏi của bạn, điều đó không quan trọng.
Nguồn
2011-10-24 21:45:55
Câu hỏi JavaScript và không phải là câu trả lời bằng jQuery? Cách kỳ lạ! 'var youtubeimgsrc = $ ('youtubeimg'). attr ('src'); ' – Keyslinger