ユーザーを別のページにリダイレクトした後にクリック機能を実行する

2020-08-02 javascript php html css

これは私が以下で試したコードです: JavaScriptを使用してユーザーを別のページにリダイレクトした直後にクリック機能を実行するには

ホームページhtml:

<a class="whitelink" href="#" onclick="redirectcontact()">Contact Us</a>

JavaScript:

function redirectcontact()
{
    window.location="about.php#"; //From home page to redirect to about.php
    document.getElementById("clickcontact").click(); //command to execute when on about.php
    
}

Answers

スクリプトの読み込みを再度リダイレクトした後、 document.getElementById("clickcontact").click()は実行されません。

解決策の1つは、ローカルストレージまたはCookieに変数を保存することです

ここに例があります

メインページ:

function redirectcontact()
{
      window.location="about.php#"; //From home page to redirect to about.php
      window.localStorage.setItem('click',true);

}

about.php

window.addEventListener('DOMContentLoaded',function(){
      if(window.localStorage.getItem('click')) {
            window.localStorage.removeItem('click');
            document.getElementById("clickcontact").click();
      }
})

この行をabout.php内のスクリプトに追加できます

window.addEventListener('DOMContentLoaded',function(){
      // you can add that line here document.getElementById("clickcontact").click();
})

しかし、ほとんどの場合、2番目の関数であるredirectfaq()は機能しません

about.php

 function redirectcontact()
        {
             window.location="about.php#";
          window.localStorage.setItem('click',true);
        }
function redirectfaq()
        {
             window.location="about.php#";
          window.localStorage.setItem('click2',true);
        }
        
        window.addEventListener('DOMContentLoaded',function(){
           
              
             if(window.localStorage.getItem('click')) {
                    window.localStorage.removeItem('click');
                    document.getElementById("clickcontact").click();
              }
 if(window.localStorage.getItem('click2')) {
                    window.localStorage.removeItem('click2');
                    document.getElementById("clickfaq").click();
              }
        });
        

index.html

 <li><a class="whitelink" id="clickcontact" onclick="redirectcontact()" href="about.php">Contact Us</a></li>
                <li><a class="whitelink" id="clickfaq" onclick="redirectfaq()" href="about.php">FAQ</a></li>  

  
    
    

Related