2015-08-09 2 views
-1

По причинам, в которые я не буду входить, мне нужно использовать iframe на странице (я знаю, что они устарели и т. Д. И т. Д.). Мне также нужно использовать javascript для вставки ссылки до iframe.Вставка JavascriptBefore iframe

Согласно W3 школах это должно быть легко:

var newItem = document.createElement("LI");  // Create a <li> node 
var textnode = document.createTextNode("Water"); // Create a text node 
newItem.appendChild(textnode);     // Append the text to <li> 

var list = document.getElementById("myList"); // Get the <ul> element to insert a new node 
list.insertBefore(newItem, list.childNodes[0]); // Insert <li> before the first child of <ul> 

Однако, это, кажется, работает с каждым HTML элемента, за исключением в IFRAME?

Может кто-нибудь объяснить, как это сделать или, по крайней мере, почему это не работает с iframes.

+0

* "Тем не менее, это похоже на работу wi th каждый элемент html, кроме iframe? »* Что заставляет вас думать, что он не работает с iframes? Вместо цитирования кода, который * работает *, при обращении за помощью, процитируйте код, который вы пробовали, который * не работал *. 'insertBefore' отлично работает с' iframes', поэтому проблема кроется в коде, который вы не показывали. –

ответ

-1

Вы можете добавить ссылку до IFRAME.

http://jsfiddle.net/n9a668dz/

$('<a href=#>a link</a>').insertBefore('iframe') 

Я не вижу IFRAME в коде

Или, если вы предпочитаете чистый Javascript:

var a=document.createElement('a') 
a.innerHTML='hello world' 
a.href='#' 

document.body.insertBefore(a,document.getElementsByTagName('iframe')[0]) 

http://jsfiddle.net/qd4ppmga/

+0

Спасибо за помощь. Кажется, он работает в jsfiddle, но все еще не работает на моем сайте. Должна быть проблема с кодом в другом месте на странице. Я буду исследовать ... –

Смежные вопросы