10

Próbując dowiedzieć się, jak to zrobić z window.location w JavaScript. Wysyłam użytkowników do naszej witryny z dołączonym adresem URL z kodem Google Analytics, który muszę przekazać do src iframe na tej stronie. Chciałbym założyć, JavaScript może zrobić to (uwaga - nie mogę korzystać z PHP) ...Przechwyć przychodzące parametry URL, a następnie przekaż do iFrame Src z Javascriptem

To jest to, co chcę zrobić:

Chciałbym wysłać użytkowników do strony ze wszystkimi danymi kampanii w takcie . Na przykład użytkownik kliknie w ten link: http://www.xyz.com/index.html?utm_source=Facebook&utm_campaign=Facebook+May&utm_medium=click

Zostaną skierowane na tę stronę, która będzie zawierała tę ramkę iFrame. Kod na stronie sklepu musiałby podnieść utm_source, utm_campaign utm_medium i zawierać następujące elementy w iframe src Więc ten bit:

<iframe height="960px" frameborder="0" scrolling="no" width="958px" src="http://www.abc.com/minis"></iframe> 

staje się teraz:

<iframe height="960px" frameborder="0" scrolling="no" width="958px" src="http://www.abc.com/minis?utm_source=Facebook&utm_campaign=Facebook+May&utm_medium=click"></iframe> 

Wszelkie sugestie javascript byłoby mile widziane. Uwaga - Nie mogę używać PHP.

AKTUALIZACJA: Gotowy do pracy !! Yay, ale teraz muszę ją edytować trochę:

Tak mówią załączone URL, który został clciked było to:

http://abc.com/index.html?apple&orange&peach 

i muszę src iframe być to

http://xyz.com/minis?orange&peach 

Przesunąłem kilka rzeczy w skrypcie, ale teraz chwytam tylko pomarańczowy, a nie inny atrybut & (brzoskwinia). Proszę doradzić, jeśli istnieje lepszy sposób do pracy (bez wszelkie params, a następnie w zależności od łącza przychodzi, niektóre & zostanie zdefiniowana:

<body> 

<script type="text/javascript"> 

$(function() { 

var loc = window.location.toString(), 
params = loc.split('&')[1], 
params2 = loc.split('&')[2], 
params3 = loc.split('&')[3], 
params4 = loc.split('&')[4], 
params5 = loc.split('&')[5], 
params6 = loc.split('&')[6], 
    iframe = document.getElementById('myIframe'); 
alert(iframe.src); 
iframe.src = iframe.src + '?' + params + '&' + params2 + '&' + params3 + '&' + params4+ '&' + params5; 
alert(iframe.src); 

}); 
</script> 
<iframe id="myIframe" src="http://www.xyz.com/minis"></iframe> 

</body> 
+0

użyć jQuery aby uzyskać parametry następnie dynamicznie wstawić nowy iframe z co chcesz. prosty – ppumkin

+0

... więc można help? :) – jgrannis

+0

mój kod iframe iframe zawiera formularz w nim, jak mogę przekazać parametr URL do formularza iframe Action? Dzięki z góry –

Odpowiedz

9

Ten mały fragment powinien zrobić, tutaj wszystko, co masz zrobić, to po chwycić kawałek? jako ciąg i dołączyć go do źródła iframe.

var loc = window.location.toString(), 
    params = loc.split('?')[1], 
    iframe = document.getElementById('myIframe'); 

iframe.src = iframe.src + '?' + params;​​​​​​​​​​​​​​​​ 
+0

, więc połączyłem tutaj, ale nie działa poprawnie. Przyznaję, JavaScript nie jest moją mocną stroną. http://jsfiddle.net/GLm5f/ – jgrannis

+0

masz błędny id, brakuje ci I w wielkich jak w JS, to myIframe, a nie myiframe - mój zły powinien po prostu użyć foo bez zamieszania. – GillesC

+0

hmmm ... zmieniono na ID zamiast nazwy i zmieniono mojąIframe, ale nadal jej nie widzę. Kiedy przyjdę z dołączonym kodem, będzie on wyświetlany w źródle widoku? więc jeśli wchodzę na dołączony adres URL google analytics, źródło widoku dla iframe src powinno mieć dołączony tag? – jgrannis

Powiązane problemy