2011-11-21 2 views
20

jquery 함수가있어서 iframe에서 웹 사이트를 연 후 호출해야합니다."X"초 후에 jquery 함수 호출을 만드는 방법

Iframe에서 웹 링크를 열려고하는데이 링크를 연 후 아래 기능을 호출해야합니다. 그래서 어떻게 할 수 있습니까?

:

<a id="various3" href="#"><asp:Button ID="Button1" 
runat="server" Text="Button" OnClientClick="Button2_Click"/></a> 

사실이 나는 데 간단한 페이지입니다 : 이것은 내 버튼을 iframe에 링크를 열 수 있습니다

<script type="text/javascript"> 
     $(document).ready(function(){ 
      $("#<%=Button1.ClientID%>").click(function (event) { 

      $('#<%=TextBox1.ClientID%>').change(function() { 
       $('#various3').attr('href', $(this).val()); 
      }); 
      $("#<%=Button2.ClientID%>").click(); 
     }); 
     }) 
    function showStickySuccessToast() { 
     $().toastmessage('showToast', { 
      text: 'Finished Processing!', 
      sticky: false, 
      position: 'middle-center', 
      type: 'success', 
      closeText: '', 
      close: function() { 

      } 
     }); 
    } 

    </script> 

: 여기

내 기능입니다 enter image description here

그리고 이것은 메시지입니다. enter image description here

+0

당신은 그냥 온 클릭을 사용할 수 없습니다 : 당신은 iframe이로드 된 후에 만 ​​버튼을 트리거 할 경우

, 당신은 가로드되었는지 확인하거나 iframe.onload을 사용할 수 있습니다 매니저? iframe에 onclick이로드되면 onclick을 실행하는 함수를 설정할 수 없습니까? – bozdoz

+0

예 할 수 있지만 한 번에 두 개 모두 깜박입니다. – coder

+0

aspx ()를 사용하고있는 것 같습니다. 그렇다면 질문을 aspx로 태그해야합니다. –

답변

78

JavaScript에서는 정상적인 setTimeout 메서드를 사용할 수 있습니다. 당신의 예에서

즉 ...

setTimeout(function(){ 
    // Do something after 1 second 
    } , 1000); 

, 당신은 직접 showStickySuccessToast을 사용할 수 있습니다.

+0

답장을 보내 주셔서 감사합니다.이 작업을 수행하면 시간 간격을 9 초로 설정했지만 한 번에 두 개 모두 깜박입니다. – coder

+1

"둘다"는 무엇입니까? –

+0

@Stein G. Strindhaug-Iframe과 메시지. – coder

2

실제 페이지를 표시 할 수 있다면 우리가 더 잘 도와 줄 수 있습니다.

<iframe .... onload='buttonWhatever(); '></iframe> 


<script type="text/javascript"> 

    function buttonWhatever() { 
     $("#<%=Button1.ClientID%>").click(function (event) { 
      $('#<%=TextBox1.ClientID%>').change(function() { 
       $('#various3').attr('href', $(this).val()); 
      }); 
      $("#<%=Button2.ClientID%>").click(); 
     }); 

     function showStickySuccessToast() { 
      $().toastmessage('showToast', { 
       text: 'Finished Processing!', 
       sticky: false, 
       position: 'middle-center', 
       type: 'success', 
       closeText: '', 
       close: function() { } 
      }); 
     } 
    } 

</script> 
+0

내 질문을 업데이트 했으므로 의미가 무엇인지 알 수 있습니다. 그리고 fancybox Iframe을 사용하고 있습니다. 웹 페이지를 표시하십시오. – coder

+0

프레임과 상호 작용하는 것에 대해 많이 알지는 않지만 클릭 기능을 $ ('# iframeID')로 변경하는 방법에 대해 위험을 감수합니다 .. child ('# button'). –

+0

실제로 나는 var timer = setTimeout (function() # {% = Button2.ClientID %> "). click();}, 9000)과 같이 함수 대신 버튼에 시간을 지정하여 작업하도록했습니다. 그리고 잘 작동합니다. 어쨌든 당신의 소중한 대답에 감사 드리며 당신의 제안을 시도 할 것입니다. – coder

관련 문제