JavaScript 代码解析:获取推荐链接并解析小说信息
这段代码定义了一个回调函数,当获取推荐链接的输入框中的 URL 时,它会将该URL作为参数传递给模型中的'model.url'属性。然后,它会订阅'model.url'属性的变化,并在每次变化时执行一些逻辑。
如果URL中包含'referrals/index/'字样,则会将其解析为小说阅读推广链接,并通过AJAX请求获取小说标题、摘要和第一章内容,并将其保存在模型中,以便在后续操作中使用。
GetReferralLinkModal.instance.inputUrlCallback = function (url) {
model.url(url);
};
model.url.subscribe(function (url) {
if (!url) {
return false;
}
// 每次url变动都先重置这三个变量
model.use_novel_title(false);
model.use_novel_summary(false);
model.use_novel_begin_content(false);
// 如果是小说阅读推广链接,则出现使用小说标题链接
var matches = /referrals/index/(\d+)/g.exec(url);
if (matches && matches.length >= 2) {
var id = matches[1];
model.referral_link_id(id);
$.get('/admin/spread/api_get?id=' + id, function (data) {
console.log(parseInt(data.types));
if (parseInt(data.type) == 0) {
$.get('/admin/articles/api_get_novel_info?id=' + data.novel_id, function (novel) {
model.use_novel_title(novel.title);
model.use_novel_summary(novel.summary);
});
$.get('/admin/articles/api_get_novel_first_article?id=' + data.novel_id, function (article) {
var content = article.content.replace(/\s| \r\n/g, ''); // 去除半角和全角的空格和换行后使用
content = content.substr(0, 50) + ' ...';
model.use_novel_begin_content(content);
});
}
});
}
});
这段代码使用了一些常见的 JavaScript 技术,例如回调函数、订阅、AJAX 请求等。它展示了如何通过解析 URL 获取信息,并将其存储到模型中以供后续使用。
原文地址: https://www.cveoy.top/t/topic/mkCR 著作权归作者所有。请勿转载和采集!