Javascript 从外部链接每隔5秒更改一次文本
我发现了一个可以工作的jQuery,它可以随时间动态更改文本,并具有淡入淡出的效果。 我希望从外部链接自动添加单词: 我该怎么做 我的目标是保持JS文件的小/小,因为我有更多其他jQuery的代码 感谢您的指导 检查我的: HTMLJavascript 从外部链接每隔5秒更改一次文本,javascript,jquery,dynamic,text,external,Javascript,Jquery,Dynamic,Text,External,我发现了一个可以工作的jQuery,它可以随时间动态更改文本,并具有淡入淡出的效果。 我希望从外部链接自动添加单词: 我该怎么做 我的目标是保持JS文件的小/小,因为我有更多其他jQuery的代码 感谢您的指导 检查我的: HTML <span class="textbox">Stylish</span> JS $(document).ready(function() { // List your words here: var words = [ 'A
<span class="textbox">Stylish</span>
JS
$(document).ready(function() {
// List your words here:
var words = [
'Awesome',
'Special',
'Sofisticated',
'Simple',
'Great',
'Better',
'Stronger',
'Stylish',
'Flawless',
'Envied',
'Strong',
'Sucessful',
'Grow',
'Innovate',
'Global',
'Knowledgable',
'Solid'
], i = 0;
setInterval(function(){
$('.textbox').fadeOut(500, function(){
$(this).html(words[i=(i+1)%words.length]).fadeIn(500);
});
}, 5000);
});
退房
乙二醇
数据
是从服务器返回的->。split从字符串中生成数组,其中'
中的位是分隔符
编辑
如果由于跨域而无法使用$.get,则答案是:
在服务器上创建脚本(wordslist.php)
使用CURL获取页面->将内容添加到变量$wordsList
,然后执行以下操作
return $wordsList;
然后执行$。改为转到URL“wordslist.php”。签出
乙二醇
数据
是从服务器返回的->。split从字符串中生成数组,其中'
中的位是分隔符
编辑
如果由于跨域而无法使用$.get,则答案是:
在服务器上创建脚本(wordslist.php)
使用CURL获取页面->将内容添加到变量$wordsList
,然后执行以下操作
return $wordsList;
然后执行$。改为获取URL“wordslist.php”。您好,您需要执行一个ajax调用,然后将返回的数据拆分为一个数组,因为它不是有效的json字符串
请尝试以下代码
$(document).ready(function(){
$.ajax({
dataType: "html",
url: "http://www-958.ibm.com/software/data/cognos/manyeyes/datasets/5-adjectives-to-describe-company-2/versions/1.txt",
success: function(data) {
var words = data.split(', ');
var i = 0;
setInterval(function(){
$('.textbox').fadeOut(500, function(){
$(this).html(words[i=(i+1)%words.length]).fadeIn(500);
});
}, 5000);
},
error: function(data) {
console.log('error occured');
}
});
});
如果您能够将txt文件修改为有效的json数组,则可以使用json或jsonp数据类型,您需要执行ajax调用,然后将返回的数据拆分为数组,因为它不是有效的json字符串
请尝试以下代码
$(document).ready(function(){
$.ajax({
dataType: "html",
url: "http://www-958.ibm.com/software/data/cognos/manyeyes/datasets/5-adjectives-to-describe-company-2/versions/1.txt",
success: function(data) {
var words = data.split(', ');
var i = 0;
setInterval(function(){
$('.textbox').fadeOut(500, function(){
$(this).html(words[i=(i+1)%words.length]).fadeIn(500);
});
}, 5000);
},
error: function(data) {
console.log('error occured');
}
});
});
如果能够将txt文件修改为有效的json数组,则可以使用json或jsonp数据类型
但由于跨域错误,您将无法获取此url
将txt复制到您的域或重定向。使用jQuery.ajax()
但由于跨域错误,您将无法获取此url
将txt复制到您的域或重定向。以下是我的示例。您不能使用IBM many eyes,因为它们不允许跨域访问。但是,您可以使用培根Ipsum。我经常使用它为测试用例生成随机文本。以下是伪代码:
对跨域资源进行AJAX调用
成功调用时,将数据加载到单词列表中
然后开始超时
代码()
这是我的例子。您不能使用IBM many eyes,因为它们不允许跨域访问。但是,您可以使用培根Ipsum。我经常使用它为测试用例生成随机文本。以下是伪代码:
对跨域资源进行AJAX调用
成功调用时,将数据加载到单词列表中
然后开始超时
代码()
您是否遗漏了迭代单词数组的部分,上面代码中i的值是多少?目标是更改这些单词m8@uniqezor只是想让你知道,我发现了一个API,可以为你生成你可能感兴趣的随机词:祝你的项目好运。谢谢,我的问题解决了,但我在以后的案例中保存了这个API。感谢您的帮助和支持:)您是否错过了迭代单词数组的部分,上面代码中i的值是多少?目标是更改这些单词m8@uniqezor只是想让你知道,我发现了一个API,可以为你生成你可能感兴趣的随机词:祝你的项目好运。谢谢,我的问题解决了,但我在以后的案例中保存了这个API。感谢您的帮助和支持:)这将导致没有“Access-Control-Allow-Origin”,这将导致出现类似XMLHttpRequest无法加载的错误http://www-958.ibm.com/software/data/cognos/manyeyes/datasets/5-adjectives-to-describe-company-2/versions/1.txt. 请求的资源上不存在“Access Control Allow Origin”标题。
使url相对以避免上述行为-您无法控制列表?我假设这只是一个例子-在这种情况下,它有点棘手-我建议使用$。在您自己的服务器上的页面->然后在该页面上使用PHP Curl获取内容并将其返回。跨域编辑的答案-以防任何人需要它做其他事情-很高兴我可以帮助Uniquezorth这将不会导致任何问题“Access-Control-Allow-Origin”这将导致出现类似XMLHttpRequest无法加载的错误http://www-958.ibm.com/software/data/cognos/manyeyes/datasets/5-adjectives-to-describe-company-2/versions/1.txt. 请求的资源上不存在“Access Control Allow Origin”标题。
使url相对以避免上述行为-您无法控制列表?我假设这只是一个例子-在这种情况下,它有点棘手-我建议使用$。在您自己的服务器上的一个页面->然后在该页面上使用PHP Curl获取内容并将其返回。跨域编辑的答案-以防任何人需要它做其他事情-很高兴我可以帮助uniquezor
$.ajax('http://www-958.ibm.com/software/data/cognos/manyeyes/datasets/5-adjectives-to-describe-company-2/versions/1.txt').done(function(response, status) {
// Check for error result (404, 500, etc)
if (status !== 'error')
{
// Split words using ", " as separator to words array.
var words = response.split(", ");
// Your code here to change texts. Nothing changed.
setInterval(function(){
$('.textbox').fadeOut(500, function(){
$(this).html(words[i=(i+1)%words.length]).fadeIn(500);
});
}, 5000);
}
});
$(document).ready(function() {
// List your words here:
var words = [];
var baconApi = 'https://baconipsum.com/api/?callback=?';
var baconSettings = {
'type':'meat-and-filler',
'paras':'1'
};
var baconCallback = function(bacon) {
if (bacon && bacon.length > 0) {
// Make word list
bacon.map(function(meat) {
words = words.concat(meat.split(/ /));
});
}
var i = 0;
// Start Timer
setInterval( function(){
$('.textbox').fadeOut(500, function(){
$(this).html(words[i=(i+1)%words.length]).fadeIn(500);
});
}, 5000);
};
$.getJSON( baconApi, baconSettings, baconCallback);
});