0

ボットがメールアドレスを見つけにくくする JavaScript と php コードがあります。非常に基本的で完璧に機能するサイトに実装しましたが、より多くの要素を備えたこの別のサイトでは、何かがうまくいかないようで、機能しません。

JavaScript はmailto:および@関数に追加します

php では、要素が呼び出され、クリックすると JavaScript が実行されて関数が完成します。つまり、通常の mailto: 関数のようになります。

おそらくDOMやグローバル要素などに関して私が欠けているものはありますか?

このスクリプトが私のheader.phpで呼び出されています:

<script type="text/javascript" src="javascript/scripts.js"></script>

scripts.js:

function blind(name,domain) {
        str = "mailto:" + name + "@" + domain;
        window.location = str;
        }

emailgen.php:

function showContacts()
{
global $debe;
    $return ="";
    $return .="
    <div>";
    $contactitems = $debe->runSql("SELECT * FROM contacts ORDER BY imp");

    for($i=0; $i<count($contactitems); $i++)
    {
            $parts = explode('@', substr($contactitems[$i][3], $pos + 0));

            $return .="
            <p><a href=\"" . $contactitems[$i][2] . "\">" . $contactitems[$i][1] . "</a><br />
            <a href=\"javascript:blind('" . $parts[0] . ",'" . $parts[1] . "')\">" .  $parts[0] . "@" . $parts[1] . "</a><br />
            </p>";  
    }

    return $return;
}

ソースを見ると正常に表示されているように見えますが、何らかの理由でmailto:が呼び出されていません。

emailgen.php のビューソース:

<a href="javascript:blind('name,'email.com')">name@email.com</a><br />
4

1 に答える 1

3

の後に一重引用符を追加します$parts[0] . "

<a href=\"javascript:blind('" . $parts[0] . "','" . $parts[1] . "')\">" .  $parts[0] . "@" . $parts[1] . "</a><br />
于 2013-02-25T14:25:47.433 に答える