jQuery кликване на бутон в iframe

hatre

Active Member
Здравейте,
Трябва ми като се зареди сайта ми да се кликне автоматично на бутон, който е във фрейм.

Код, който ще извършва кликането:

HTML:
    <script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.5.js" type="text/javascript"></script>
    <script type="text/javascript">
        $(document).ready(function() {
            var frame = $('#iframeID').get(0).contentDocument;
			$('button', frame).trigger('click');
        });
	</script>
<iframe id="iframeID" src="file.php"></iframe>


Код на втория файл file.php (фрейма)

PHP:
<?php
if (isset($_POST['bla']))
	{
		echo "Да натиснато е";
		exit(1);
	}
 ?>
<form method="post">
<input type="hidden" name="bla" /> 
<button type="submit" id="childBtn" value="Child button"/> 
</form>

До преди 1 час работеше сега не иска. Някой да има идея?
 
От: jQuery кликване на бутон в iframe

От кода се вижда, че е на същия сървър и домейн.
Пробвай да си махнеш кеша или пробвай с друг браузър.
Щом е работело преди час няма как да не работи и сега.
Препоръчвам ти да прехвърлиш и джаваскрипта на твой сървър.
 
От: jQuery кликване на бутон в iframe

Фрейма няма да е на същия сървър. Идеята ми беше по този начин да направя, като някой влезе в сайта ми, да хареса FB (ако е логнат във FB). Но когато кода работеше, за FB нищо не се получи. А как се прави с jQuery достъп до фрейм, който е на друг сървар и домейн?
 
От: Re: jQuery кликване на бутон в iframe

Не можеш да манипулираш съдържанието/евентите на различен от твоя домейн..

Мерси, вече 2 дена са мъча, но мислих че все ще е възможно с подобен начин на този.
А ако може да подскажеш как се прави? Аз пробвам едно, което работи но на Хром не иска:

Вземам фомата за харесване на FB:
HTML:
<form id="u_0_0"  method="post" action="http://www.facebook.com/plugins/like/connect.php">
<input type="text" name="fb_dtsg" value="AQBK9qdd">
<input type="hidden" name="href" value="http://www.facebook.com/pages/моя-файсбук">
<button type="submit">Харесва ми</button>
</form>

А това субмитва само:
HTML:
<script type="text/javascript">
function myfunc () {
var frm = document.getElementById("u_0_0");
frm.submit();
}
</script>


Двата кода като са във фрейм и в сйата ми си работят. Прбвах го на Опера и Мозила работи, но при хром, FB казва че не може да ми обработи заявката. Въпреки че този метод не добре и вероятността да ме хванат е голяма. Най-добре е някакси да се цъкни на оригиналния бутон (фрейма от FB) но как не знам
 

Горе