我通常在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);
});
}
我无法告诉你有多少次我改变了这一点,试图找出如何使元素链接可点击,但没有运气。您可以提供任何帮助。
答案 0 :(得分: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>
代码中还有一个额外的&#34;#&#34; ,这会导致此结果。
答案 1 :(得分: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>