-1

我通常不会在 Javascript 方面做太多事情,但最近几天一直在解决这个问题。基本上我在表格中有文本,其中文本本身是一个链接,单击该链接会选择文本。当链接悬停在上面时,我正在使用 Tipsy 显示消息“单击以选择文本”。单击链接(并选择文本)后,我希望将 Tipsy 显示的原始文本更改为超链接。我可以更改文本,但链接是纯文本而不是可点击的链接。

这是一行文本的示例(函数 fnSelect 使用该类来选择表格行中的所有文本)。

        <td class="text"><a id="fade_text1" href="javascript:fnSelect('tom1');" onClick="alternate()" original-title="Click To Select Text"><?php echo $book['text']; ?></a></td>

函数alternate() 是我试图通过更改原始标题来显示超链接的函数,如下所示。

function alternate() {
    $(".tipsy").remove();
    var link = "site.com/bookmark.php";
    var element = document.createElement("a");
    element.setAttribute("href", link);
    element.innerHTML = "Bookmark Text";
    document.body.appendChild(element);
        $('#fade_text1').tipsy({delayIn: 90, delayOut: 3000});
    $('a').click(function() {
        $('#fade_text1').attr('original-title', element);
    });
}

我无法告诉你我改变了多少次试图弄清楚如何使元素链接可点击,但没有运气。您可以提供的任何帮助将不胜感激。

4

2 回答 2

0

代替:

<a id="fade_text1" href="javascript:fnSelect('tom1');" "#" onClick="alternate()" original-title="Click To Select Text"><?php echo $book['text']; ?></a>

和:

<a id="fade_text1" href="javascript:fnSelect('tom1');" onClick="alternate()" original-title="Click To Select Text"><?php echo $book['text']; ?></a>

你的标签中有一个额外的“#”<a>,这导致了这个结果。

希望有帮助。

于 2013-12-24T06:41:31.863 回答
0

好吧,如果没有别的,我很坚持。答案其实很简单:

$(document).ready(function(){
    $('#1').tipsy({fade: true, opacity: 1.0, html: true, delayOut: 4000});
});


<?php
    $link = "index.php";
    $text = "<a href=" . $link . ">Bookmark Text</a>";
?>


<a id="1" href="#" title="This is a Test" onclick="$('#1').attr('title', '<?php echo $text; ?>');"><?php echo "Click Me"; ?></a>
于 2013-12-25T15:59:43.433 回答