4

PDF ファイルにリンクするハイパーリンクの先頭に「PDF のダウンロード」を追加したいと思います。現在、その正確なテキストを先頭に追加できますが、ハイパーリンク テキストの先頭に追加されます。次のように、ハイパーリンク要素の外に配置したいと思います: Download a PDF of [hyperlink with text]

これは私が今使っているコードです:

jQuery('a[href$=.pdf]').prepend('Download a PDF of ');
4

4 に答える 4

6

以前に試したことがありますか?

jQuery('a[href$=.pdf]').before('Download a PDF of ');
于 2010-01-31T17:58:54.137 に答える
2

インライン要素 (例: <span>)でラップして、目的の要素の前に挿入できます。これが SSCCEです。コピーして貼り付けて実行するだけです。

<!doctype html>
<html lang="en">
    <head>
        <title>SO question 2172666</title>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
        <script>
            $(document).ready(function() {
                $('<span>Download a PDF of </span>').insertBefore('a[href$=.pdf]');
            });
        </script>
    </head>
    <body>
        <p><a href="foo.pdf">foo.pdf</a></p>
        <p><a href="foo.exe">foo.exe</a></p>
        <p><a href="bar.pdf">bar.pdf</a></p>
    </body>
</html>

編集:ああ、前に答えたように、jQuery.before()はあなたが望むように正確に機能するので、代わりにそれを選びます。

于 2010-01-31T18:00:47.100 に答える
0

探していることを実行する例を次に示します。

<a href="foo.pdf">Foo</a>
<a href="bar.pdf">Bar</a>
<span id='foo'>Download a pdf of </span>
<script type='text/javascript'>
$('#foo').insertBefore('a[href$=.pdf]');
</script>
于 2010-01-31T18:08:48.143 に答える