Я сейчас пытаюсь использовать этот код на своем веб-сайте:
<script>
var file = "http://newsxpressmedia.com/files/theme/test.txt";
function getFile(){
$.get(file,function(txt){
var lines = txt.responseText.split("\n");
for (var i = 0, len = lines.length; i < len; i++) {
save(lines[i]);
<ul class="newsticker">lines[i]</ul>
}
});
}
</script>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="http://newsxpressmedia.com/files/theme/jquery.newsTicker.js"></script>
<script>
$('.newsticker').newsTicker({
row_height: 48,
max_rows: 2,
speed: 6000,
direction: 'up',
duration: 400,
autostart: 1,
pauseOnHover: 0
});
</script>
Но я ничего не вижу. Текст предполагает прокрутку вверх.
В исходном коде был:
<ul class="newsticker">
<li>Etiam imperdiet volutpat libero eu tristique.</li>
<li>Curabitur porttitor ante eget hendrerit adipiscing.</li>
<li>Praesent ornare nisl lorem, ut condimentum lectus gravida ut.</li>
<li>Nunc ultrices tortor eu massa placerat posuere.</li>
</ul>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="http://newsxpressmedia.com/files/theme/jquery.newsTicker.js"></script>
<script>
$('.newsticker').newsTicker({
row_height: 48,
max_rows: 2,
speed: 6000,
direction: 'up',
duration: 400,
autostart: 1,
pauseOnHover: 0
});
</script>
Что я делаю не так? Я проверил, что файл test.txt существует, и я могу его прочитать, но код:
<script>
var file = "http://newsxpressmedia.com/files/theme/test.txt";
function getFile(){
$.get(file,function(txt){
var lines = txt.responseText.split("\n");
for (var i = 0, len = lines.length; i < len; i++) {
save(lines[i]);
<ul class="newsticker">lines[i]</ul>
}
});
}
</script>
Не работает. Я ничего не вижу. Пытался добавить в FOR LOOP строку:
<ul class="newsticker">lines[i]</ul>
Но я думаю, это неправильно.
РЕДАКТИРОВАТЬ**
Теперь код выглядит следующим образом:
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script src="http://newsxpressmedia.com/files/theme/jquery.newsTicker.js"></script>
<script>
$(function() {
var file = "http://newsxpressmedia.com/files/theme/test.txt";
$.get(file, function (txt) {
var lines = txt.responseText.split("\n");
$ul = $('<ul class="newsticker" />');
for (var i = 0, len = lines.length; i < len; i++) {
//save(lines[i]); // not sure what this does
$ul.append('<li>' + lines[i] + '</li>');
}
$ul.appendTo('body').newsTicker({
row_height: 48,
max_rows: 2,
speed: 6000,
direction: 'up',
duration: 400,
autostart: 1,
pauseOnHover: 0
});
});
});
</script>
Но он ничего не делает, я вообще не вижу никакого текста.
РЕДАКТИРОВАТЬ**
Откройте консольный dev на моем веб-сайте по адресу: http://newsxpressmedia.com/ И я вижу этот текст в консоли:
6 Считайте использование единиц "dppx" вместо "dpi", так как в CSS "dpi" означает "точки на дюйм", а не "точки на физический дюйм", поэтому не соответствует фактическому "dpi" экрана, В выражении медиарекламы: только экран и (-webkit-min-device-pixel-ratio: 2), не все, не все, не все, только экран и (мин-разрешение: 192dpi), только экран и (мин-разрешение: 2dppx) (index): 1 Uncaught TypeError: Невозможно вызвать метод "split" undefined (index): 101 event.returnValue устарел. Вместо этого используйте стандартное событие event.preventDefault().
У вас есть две проблемы. Во-первых, вам нужно создать свои элементы li
и добавить их в dom. Во-вторых, вы не дожидаетесь завершения вызова ajax до настройки плагина newsticker. Я также не вижу причины иметь функцию getFile
:
$(function() {
var file = "http://newsxpressmedia.com/files/theme/test.txt";
$.get(file, function (txt) {
var lines = txt.responseText.split("\n");
$ul = $('<ul class="newsticker" />');
for (var i = 0, len = lines.length; i < len; i++) {
//save(lines[i]); // not sure what this does
$ul.append('<li>' + lines[i] + '</li>');
}
$ul.appendTo('body').newsTicker({
row_height: 48,
max_rows: 2,
speed: 6000,
direction: 'up',
duration: 400,
autostart: 1,
pauseOnHover: 0
});
});
});
console.log()
чтобы увидеть, где что-то идет не так?