Вы не зашли.
Была мысля)) Но что то насторожило меня это на боевом nodejs сервере.
Добавлено спустя 6 минут 35 секунд: Проверил. Можно завернуть в трайкэч. Спасибо :)
Блин. Проблема вовсе не в парсинге. Битые символы уже есть в полученном файле. Проблему надо искать в получении содержимого. Возможно проблема в склеивании строк при плюсовании новых полученных данных из буфера сокета. Сейчас буду искать причину.
Код:
var output = ""; |
var status; |
var headers; |
var req = (parseUrl.protocol == "https:" ? https: http).get(url, function(res) { |
status = res.statusCode; |
headers = res.headers; |
res.on('data', function(d) { |
output += d; |
}) |
.on('end', function () { |
console.log(output); |
callback(null, output, status, headers); |
}); |
}) |
Добавлено спустя 5 минут 44 секунды: Собственно как Я и предполагал.
Добавил такой код и получил тексты которые c битыми символами
Код:
res.on('data', function(d) { |
var l = output.length; |
if (l > 0) { |
console.log(output.substr(l-10, l, 'utf-8')); |
} |
output += d.toString(); |
}) |
Решение нашел быстро. Все решается указав входящему потоку кодировку res.setEncoding('utf8');
Код:
var req = (parseUrl.protocol == "https:" ? https: http).get(url, function(res) { |
status = res.statusCode; |
headers = res.headers; |
res.setEncoding('utf8'); |
res.on('data', function(d) { |
output += d; |
}) |
function vksitemention(info, tab) {
var sites = tab.url.match(/^[\w-]+:\/*\[?([\w\.:-]+)\]?(?::\d+)?/)[1];
chrome.tabs.create({
url: 'http://vk.com/feed?q=domain:' +sites+ '§ion=search'
});
}
Здесь регулярка обрезает все кроме домена, а надо чтобы остался полный адрес, но только без "https://", "http://", "https://www.", "http://www.". Помогите пожалуйста, какая там должна быть регулярка?
Merzavetz написал:
function vksitemention(info, tab) {
var sites = tab.url.match(/^[\w-]+:\/*\[?([\w\.:-]+)\]?(?::\d+)?/)[1];
chrome.tabs.create({
url: 'http://vk.com/feed?q=domain:' +sites+ '§ion=search'
});
}
Здесь регулярка обрезает все кроме домена, а надо чтобы остался полный адрес, но только без "https://", "http://", "https://www.", "http://www.". Помогите пожалуйста, какая там должна быть регулярка?
Код:
var parser = document.createElement('a'); |
parser.href = "http://example.com:3000/pathname/?search=test#hash"; |
|
parser.protocol; // => "http:" |
parser.hostname; // => "example.com" |
parser.port; // => "3000" |
parser.pathname; // => "/pathname/" |
parser.search; // => "?search=test" |
parser.hash; // => "#hash" |
parser.host; // => "example.com:3000" |
Всем привет помогите пожалуйста разобраться есть некий код
Код:
span style="color: #0000BB"><?php<div><img src="'.$dir.$files[$i].'">[<a href="javascript:inf(\'#content'.$i.'\')" id="say" class="infos">инфо</a>] <div id="content'.$i.-динамический'" style="display:none;" class="content"> <span id="closed" onclick="out();">[X]</span> путь: '.$dir.$files[$i].'<br/> имя : '.$files[$i].'<br/> размер: '.floor(filesize($dir.$files[$i])/1024).'. b. </div> </div>function inf(rz){ $(rz).fadeIn(300).html(); //открытие контента }function out(){ $('#closed').click(function(){ $('.content').hide("slow");// закрытие контента });} |
вроде все норм работает но при закрытии закрываеться контейнер с content0
но когда пытаюсь закрыть контейнера с id content1,content2 и так далее они не закрываються
как можно проблему исправить гугл не помог
Отредактировано tipsun (2015.02.11 20:08)
у тебя на странице получается много одинаковых элементов с одинаковой id "closed". ей тоже нужно циферку в конец дописывать, как и к "content".
и лучше закрывать не явно вызывая функцию, а вешая обработчик типа такого.
Код:
$("span[id^='closed']").click(function () { |
$(this).parent().hide("slow"); |
}); |
Нет, я спрашиваю про обьект типа "кнопка" но что бы с фоновым рисунком или как хоть ее цвет поменять?
EvgenCed1966 написал:
Нет, я спрашиваю про обьект типа "кнопка" но что бы с фоновым рисунком или как хоть ее цвет поменять?
ты о чем?