gpt4 book ai didi

javascript - Bootstrap + 弹出窗口 - skype href 链接不起作用

转载 作者:行者123 更新时间:2023-11-28 03:13:31 25 4
gpt4 key购买 nike

我有以下PHP + HTML:

                <div class="row justify-content-center" id="grid">
<?php
$result = $conn->query("SHOW TABLES from vmvelevp_roster");
while($tableName = mysqli_fetch_row($result)) {
$table = $tableName[0];
$sql2 = "SELECT * FROM $table";
$result2 = mysqli_query($conn, $sql2);
while ($row = mysqli_fetch_assoc($result2)) {
echo '<figure class="picture-item mr-2">';
echo '<img src="img/employees-img/' . $row['picname'] . '" ';
echo 'class="img-fluid rounded-circle" ';
echo 'data-toggle="popover" ';
echo 'data-placement="bottom" ';
echo 'title="' . $row['name'] . '" ';
echo "data-content='";
if (!empty($row['position'])) {
echo "<b>Position:</b> " . $row['position'] . "<br />";
}
if (!empty($row['department'])) {
echo "<b>Department:</b> " . $row['department'] . "<br />";
}
if (!empty($row['email'])) {
echo "<b>E-Mail:</b> <a href=mailto:" . $row['email'] .">" . $row['email'] . "</a><br />";
}
if (!empty($row['phoneinternal'])) {
echo "<b>Phone Internal:</b> " . $row['phoneinternal'] . "<br />";
}
if (!empty($row['phoneexternal'])) {
echo "<b>Phone External:</b> " . $row['phoneexternal'] . "<br />";
}
if (!empty($row['skype'])) {
echo "<b>Skype:</b> " . $row['skype'];
echo '<a href="skype:charie.brown?chat">Chat</a>';
echo "' ";
} else {
echo "' ";
}
echo 'alt="...">';
echo '<div class="picture-item__details">';
echo '<figcaption class="picture-item__title">' . $row['name'] . '</figcaption>';
echo '</div>';
echo '</figure>';
}
}
?>
</div>

电子邮件 href 显示完美,但 Skype href 未显示。

我想知道如何解决这个问题?

我关于弹出窗口的 JavaScript:

jQuery(document).ready(function() {
$("[data-toggle=popover]").each(function(i, obj) {
$(this).popover({
html: true,
trigger: "manual"
});
}).on('mouseenter', function() {
var _this = this;
$(this).popover('show');
$('.popover').on('mouseleave', function() {
$(_this).popover('hide');
});
}).on('mouseleave', function() {
var _this = this;
setTimeout(function() {
if (!$('.popover:hover').length) {
$(_this).popover('hide');
}
}, 50);

这是我的结果:

enter image description here

有什么办法可以解决这个问题吗?

这很奇怪,因为 href 在有电子邮件时起作用,但在 Skype 链接时不起作用。我尝试将代码发布到不同的文件(仅 href)中,并将 PHP 连接到我的数据库,它运行良好。

编辑:只是一个简短的解释。应该为单个事物呈现的确切代码是:

<img src="img/employees-img/xxx.jpg" class="img-fluid rounded-circle" data-toggle="popover" data-placement="bottom" title="" data-content="<b>Position:</b> xxx<br /><b>Department:</b> xxx<br /><b>E-Mail:</b> <a href=mailto:peter@xxx.com>peter@xxx.com</a><br /><b>Phone External:</b> +xxx<br /><a href="skype:charie.brown?chat">Chat</a>" alt="..." data-original-title="xxx">

如果我将其粘贴到其他文档中,则 href 可以正常工作。

最佳答案

最新版本的 Bootstrap 似乎包含一个用于安全 URL 的清理程序,而 Skype 不是其中之一。您可以阅读有关此的更多信息here

为了解决此问题,您可以使用上面链接上的选项,或者可以按如下方式编辑 bootstrap.bundle.js:

更改此:

var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;

对此:

var SAFE_URL_PATTERN = /^(?:(?:https?|mailto|skype|ftp|tel|file):|[^&:/?#]*(?:[/?#]|$))/gi;

感谢大家的建议。

关于javascript - Bootstrap + 弹出窗口 - skype href 链接不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59874010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com