我正在使用Squarespace并尝试使用.append
和.load
来首先创建一个空div(因此.append
)和然后插入我的简报div它的内容从我的网站的“母亲”页面进入我的网站的许多其他页面(必须使用JQuery,而不是PHP)。这样我只需要编辑母元素,然后将更改反映在其他页面中。 Squarespace在这些方面没有提供任何帮助,我在他们的问题论坛中也找不到任何东西。
以下是我尝试使用的代码,方法是按照我在JQuery API,load() but append data instead of replace和stackoverflow问题JQuery use .load() to append data instead of replace找到的示例,但我一定做错了:
简单的JQuery
$(".content").first().before("<div id='newsletter-section'>Newsletter Signup</div>");
// the above is to create the target div
$("#newsletter-section").load("example.com/newsletter .content");
的Ajax
$(".content").first().before("<div id='newsletter-section'>Newsletter Signup</div>");
// the above is to create the target div
$.ajax({
url: 'example.com/newsletter',
dataType: 'html',
success: function(html) {
var div = $('.content', $(html)).addClass('done');
$('#newsletter-section').html(div);
}
});
我尝试过使用.get
方法:
$(".content").first().before("<div id='newsletter-section'>Newsletter Signup</div>");
// the above is to create the target div
$.get("https://www.ikingdesigns.com/newsletter",function(data) {
var newsletter = $(data).filter(".content");
$("#newsletter-section").append(newsletter);
});
并在.load
中使用.append
:
$('.content').append($('<div id="newsletter-section">Newsletter Signup</div>').load('example.com/newsletter .content'));
我是否需要在我的网站上加载一个额外的脚本才能运行? 这是一个帮助
的小提琴任何帮助将不胜感激:) 提前致谢
答案 0 :(得分:1)
这样的事情会起作用:
从目标部分内的网址加载简报,然后通过SS的生命周期方法进行回调初始化。
$(".content").first().before("<div id='newsletter-section'>Newsletter Signup</div>");
$('#newsletter-section').load('https://www.ikingdesigns.com/newsletter .newsletter-block', function(){
var block = Y.one('.newsletter-block');
window.Squarespace.initializeNewsletterBlock(block);
});