javascript - 如何修复错误“DOM 文本被重新解释为 HTML 而不转义元字符”?(来自 GitHub)
问题描述
我在 GitHub 上收到此安全错误:
DOM 文本在不转义元字符的情况下被重新解释为 HTML。CodeQL
对于这部分代码:
var url = window.location.href;
var title = $('title').text();
$(document).ready(function() {
$("#shareit").html("<mobileshare3 class='mobileshare3'><a href='https://pinterest.com/pin/create/button/?url="+url+
"&media="+url+"&description="+title+"' rel='noreferrer' target='_blank' title='شارك على بانتيراست'>"+
"<i class='fab fa-pinterest'></i></a></mobileshare3><mobileshare5 class='mobileshare5'><a class='whatsapp' href='whatsapp://send?text="+
title+" "+url+"' rel='noreferrer' target='_top' title='شارك على واتساب'><i class='fab fa-whatsapp'></i></a></mobileshare5>"+
"<mobileshare4 class='mobileshare4'><a href='https://t.me/share/url?url="+url+"&text="+title+
"' rel='noreferrer' target='_blank' title='شارك على تيليغرام'><i class='fab fa-telegram-plane'></i></a></mobileshare4><mobileshare class='mobileshare'><a href='https://www.facebook.com/sharer.php?u="+
url+"&t="+title+"' rel='noreferrer' target='_blank' title='شارك على فايسيوك'><i class='fab fa-facebook'></i></a></mobileshare>");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="shareit">
解决方案
$(document).ready(function() {
$(`#shareit`).html(`<mobileshare3 class='mobileshare3'><a href='https://pinterest.com/pin/create/button/?url=`${url}
`&media=`${url}`&description=`${title}`' rel='noreferrer' target='_blank' title='شارك على بانتيراست'>`+
`<i class='fab fa-pinterest'></i></a></mobileshare3><mobileshare5 class='mobileshare5'><a class='whatsapp' href='whatsapp://send?text=`+
title+` `${url}`' rel='noreferrer' target='_top' title='شارك على واتساب'><i class='fab fa-whatsapp'></i></a></mobileshare5>`+
`<mobileshare4 class='mobileshare4'><a href='https://t.me/share/url?url=`${url}`&text=`${title}
`' rel='noreferrer' target='_blank' title='شارك على تيليغرام'><i class='fab fa-telegram-plane'></i></a></mobileshare4><mobileshare class='mobileshare'><a href='https://www.facebook.com/sharer.php?u=`+
url+`&t=`${title}`' rel='noreferrer' target='_blank' title='شارك على فايسيوك'><i class='fab fa-facebook'></i></a></mobileshare>`);
});
推荐阅读
- r - 如何在 R/future/furrr 中对并行 API 请求进行速率限制
- javascript - 如果数组循环中的项目不可用,则返回零并将项目安排为工作日
- wordpress - 更新 wordpress 主题时如何修复 chmod 错误?
- docker - 如何列出推送到 microk8s 内置注册表的图像
- php - 数据未进入视图
- windows - 您可以使用 PowerShell 压缩网络共享上的文件而不将它们下载到客户端吗?
- python - Ajax 提交导致页面 404 错误的类似按钮
- javascript - 当其他用户输入数据时更新数据
- git - 在 VScode 上更改 git 帐户
- nvm - 我不断收到“您需要在使用前运行“nvm install N/A”来安装它。” 即使我已经安装了 lts/*