我正在尝试为工具提示设置正确的格式,但我不知道该怎么做。下面的代码完美地工作:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Bootstrap 4 Tooltip</title>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
<script>
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip();
});
</script>
</head>
<body>
<a class="btn btn-primary btn-lg" href="#" data-toggle="tooltip" title="Default tooltip">Button!</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
在我的 blazor 服务器应用程序中,我在 _host.cshtml 中包含了完全相同的代码,但工具提示没有获得正确的格式。我很确定这与渲染逻辑有关,因为如果我从我的一个可路由页面中获取一个工具提示元素,并将其直接放在 _host.cshtml 中,它就可以工作。问题是,我怎样才能在我的可路由页面中做到这一点。?
工具提示“Test1”是首选行为,该按钮直接在 _host.cshtml 中实现。如果在可路由页面中实现了相同的按钮,'Test2' 就是我得到的结果。标签看起来像这样:
<a class="btn btn-primary btn-lg" href="#" data-toggle="tooltip" data-placement="right" title="Test2">abc</a>
Run Code Online (Sandbox Code Playgroud)
诀窍是从页面方法 onafterrender 加载 jquery 脚本。cshtml文件中的snippet执行到很早,所以不起作用。将 jquery 代码添加到单独的 javascript 文件中并使用 onafterrender 方法从每个页面使用 ijsruntime.Invokeasync 执行该代码时,它完美地工作。
Javascript:
function addTooltips() {
$('[data-toggle="tooltip"]').tooltip({
trigger: 'hover'
});
$('[data-toggle="tooltip"]').on('mouseleave', function () {
$(this).tooltip('hide');
});
$('[data-toggle="tooltip"]').on('click', function () {
$(this).tooltip('dispose');
});
}
Run Code Online (Sandbox Code Playgroud)
剃刀:
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (firstRender)
{
await js.InvokeVoidAsync("addTooltips");
}
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<button class="btn btn-secondary" @onclick="@(() => Callback.InvokeAsync(Item))" data-toggle="tooltip" data-placement="top" title="Edit">Edit</button>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1996 次 |
| 最近记录: |