如果我直接在 HTML 页面上添加 TrustPilot html 代码,它可以正常工作,但我需要使用 jQuery 插入它。插入时我看到了 HTML 代码,但它没有显示。
$(window).on('load', function () {
var el = $('#some-element');
el.html( trustPilotHtml() );
function trustPilotHtml() {
var str = "<div " +
"class='trustpilot-widget' " +
"data-locale='en-GB' " +
"data-template-id='123456' "+
"data-businessunit-id='123456' " +
"data-style-height='500px' " +
"data-style-width='100%' " +
"data-theme='light' " +
"data-stars='4,5' " +
"data-schema-type='Organization'>" +
"<a " +
"href='https://some-url.com' target='_blank'>Trustpilot</a> " +
"</div>";
return $(str);
}
});
让元素正确显示的唯一方法是直接插入到 HTML 中而不使用 JavaScript 吗?
最佳答案
不,这不是唯一的方法。
您应该在 HTML 的 HEAD 部分(或附近)内有一个引导脚本。 该脚本负责初始化 HTML 中的所有小部件(Trustpilot 行话中的 TrustBox)。
当然,如果您动态注入(inject) HTML,则这不起作用,因此也可以调用 window.Trustpilot.loadFromElement(trustbox);
如果需要的话,你自己。
这里trustbox
是一个 HTMLElement,您可以通过使用 document.getElementById("some-element")
来获取或类似的。
关于javascript - 使用 JavaScript (jQuery) 插入时无法显示 TrustPilot HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49997539/