Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.09.2013, 16:52
Аспирант
Отправить личное сообщение для dolte Посмотреть профиль Найти все сообщения от dolte
 
Регистрация: 04.09.2013
Сообщений: 37

Ошибка: Uncaught TypeError: Cannot set property 'innerHTML' of null
Проверяем на наличие хэша в строке браузера
если http://mysite.ru#1 то ничего не показываем
если http://mysite.ru#2 или http://mysite.ru#3 или http://mysite.ru#4

то выводим alert и данные из файла, ошибка показывается, но файл не вставляется.

в консоли:
Uncaught TypeError: Cannot set property 'innerHTML' of null

<script>
var hah = window.location.hash;


var requestik = new XMLHttpRequest();requestik.open('GET', '/complete/moonbeam-suhov/page1.html');
requestik.send(null)
var html = document.documentElement;
var elementik = document.querySelector('.showphoto1');

if( hah >= "#2"){
	alert('хеш');
	elementik.innerHTML = requestik.responseText;
}     

</script>
<div class="showphoto1"></div>
Ответить с цитированием
  #2 (permalink)  
Старый 13.09.2013, 16:53
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

оберни код в window.onload = function() { ... }
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #3 (permalink)  
Старый 16.09.2013, 09:14
Аспирант
Отправить личное сообщение для dolte Посмотреть профиль Найти все сообщения от dolte
 
Регистрация: 04.09.2013
Сообщений: 37

Код обернул, с алертом файл подключается, убираю алерт, файл не подключается.
Причем в опере12 работает, а в хроме только алерт.

Последний раз редактировалось dolte, 16.09.2013 в 09:29.
Ответить с цитированием
  #4 (permalink)  
Старый 16.09.2013, 09:28
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

window.onload = function() {
    var requestik = new XMLHttpRequest();
    requestik.open('GET', '/complete/moonbeam-suhov/page1.html');
    requestik.onreadystatechange = function() {
        if (this.readyState === 4 && (this.status >= 200 && this.status < 300 || this.status === 304)) {
            var hah = window.location.hash;
            var html = document.documentElement;
            var elementik = document.querySelector('.showphoto1');
            if (hah >= "#2") {
                alert('хеш');
                elementik.innerHTML = requestik.responseText;
            }
        }
    }
    requestik.send(null);
}
__________________
хм Russians say завтра but завтра doesn't mean "tomorrow" it just means "not today."
HTML5 history API рассширение для браузеров не поддерживающих pushState, replaceState
QSA CSS3 Selector Engine
Ответить с цитированием
  #5 (permalink)  
Старый 16.09.2013, 09:54
Аспирант
Отправить личное сообщение для dolte Посмотреть профиль Найти все сообщения от dolte
 
Регистрация: 04.09.2013
Сообщений: 37

А как объединить это с fancybox ?
вот код вызова:

var thisHash = window.location.hash;
$(document).ready(function() {
if(window.location.hash) {
$(thisHash).fancybox({
})
.trigger('click');
}	
$('.fancybox').attr('rel', 'gallery').fancybox({
prevEffect : 'fade',
nextEffect : 'fade',
closeBtn  : true,
arrows    : true,
nextClick : true,
beforeClose: function() {
window.location.hash = '';
},
afterLoad: function() {
$.getScript("/share.js");
var el, id = $(this.element).data('title-id');
window.lnkimg = this.href;
if(id){
el = $('#'+id);
if(el.length){
this.title = el.html();
}
}
window.location.hash = this.index;
},});});


т.е кодга открываем фото, у нас к адресу добавляется хеш, допустим
http://mysite.com#3
и по этой ссылке срабатывает
.trigger('click');
открывается выбранное фото.
Ответить с цитированием
Ответ


Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Парсинг рамблер кассы Sub-zerro Общие вопросы Javascript 10 19.02.2018 22:13
Ошибка Uncaught TypeError: Cannot read property 'elements' of undefined Allality Общие вопросы Javascript 14 29.07.2012 17:35
Ext.data.Record.create - Uncaught TypeError: Cannot read property 'items' of undefine potkin ExtJS 2 01.07.2012 22:29
Ошибка: "'xmlDoc' - есть null или не является объектом" seregarem Элементы интерфейса 18 26.02.2012 13:31
ошибка с innerHTML Gekt0r Общие вопросы Javascript 15 21.08.2008 10:57