powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Перезагрузка свойств или удаление объекта без перезагрузки страницы
2 сообщений из 2, страница 1 из 1
Перезагрузка свойств или удаление объекта без перезагрузки страницы
    #39418562
Japson
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всех приветствую,
есть такой винтажный плеер: https://tympanus.net/codrops/2012/07/12/old-school-cassette-player-with-html5-audio/.
Загрузка композиций в нем происходит при создании объекта через передачу options:
Код: javascript
1.
$( '#vc-container' ).cassette(options);


В самой функции cassette происходит инициализация объекта через this._init:
Код: javascript
1.
2.
3.
$.Cassette= function( options, element ) {	
		this.$el = $( element );
		this._init( options );  	};


Данный метод описан в прототипе:
Код: javascript
1.
2.
3.
4.
5.
$.Cassette.prototype 	= {
		_init: function( options ) {
                // код.........
               this.$loader= this.$el.find( 'div.vc-loader' ).show();
                }    }


Задача: не перегружая страницу обновить переменную options в объекте, и заново объект инициализировать.

Я вижу два варианта решения:
1. Удалить объект и заново его создать с новыми параметрами. Но не понимаю как его можно удалить.
2. Передать параметры в прототип Cassette.prototype и запустить инициализацию.
В коде прототипа делаю ссылку на него извне: window.myOb=this;
Потом создаю новый объект-массив options={ songs: [ '333','222','777', '777', '888']};
Пытаюсь его инициализировать myOb.__proto__._init(options);
Выдает ошибку: TypeError: this.$el is undefined
Но данный элемент передается через функцию: $( '#vc-container' ).cassette(options).
Если же делать через повторный запуск функции (передачу нового массива), то ничего не происходит. Так как я понимаю объект уже создан.
Подскажите, пожалуйста, в каком направлении надо искать решение данной задачи?
...
Рейтинг: 0 / 0
Перезагрузка свойств или удаление объекта без перезагрузки страницы
    #39420417
Japson
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
проблема решена.
при запуске плагина
Код: javascript
1.
 $( '#vc-container' ).cassette(options);

у элемента появляется объект, к которому можно обратиться через data. Соответственно, получить доступ к свойствам и методам.
Пример jQuery:
Код: javascript
1.
2.
3.
var element=$('#vc-container').data().cassette;
element.options.songs.length; // размер массива песен и т.д.
$('#vc-container').data('cassette').remove();  // удалить объект cassette из элемента
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Перезагрузка свойств или удаление объекта без перезагрузки страницы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]