Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 09.09.2015, 00:22
Аспирант
Посмотреть профиль Найти все сообщения от forwardonly2015
 
Регистрация: 31.08.2015
Сообщений: 90

Beegun,
Не знаю, как тебе объяснить, ты пишешь полную ахинею. Подожди, может кто-нибудь тебе подскажет решение на чистом жеквери.
Ответить с цитированием
  #12 (permalink)  
Старый 09.09.2015, 00:27
Аспирант
Посмотреть профиль Найти все сообщения от forwardonly2015
 
Регистрация: 31.08.2015
Сообщений: 90

Beegun,
Или опиши задачу словами, подробно и полно, я завтра выложу тебе готовое решение, если пойму твое описание
Ответить с цитированием
  #13 (permalink)  
Старый 09.09.2015, 07:38
Аспирант
Отправить личное сообщение для Beegun Посмотреть профиль Найти все сообщения от Beegun
 
Регистрация: 07.09.2015
Сообщений: 38

Задача такова. На странице 2 таблицы слева пустая ячейки имеют id obj_id. справа таблица с картинками разное количество. Нужно сделать раскраску, то-есть нажимаешь на картинку и в переменной записывается src картинки, а потом тыкаешь на ячейки пустой таблицы чтобы их bachground image получал src из переменной. Как-то так.
Ответить с цитированием
  #14 (permalink)  
Старый 09.09.2015, 07:46
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

<style>
   .col {
       width: 50px;
       height: 50px;
       float: left;
       margin: 10px;
       border: 1px solid #000;
       border-radius: 5px;
       background-size: 100%;
       background-repeat: no-repeat;
       background-position: center;
   }
</style>

<img class='img' src='http://yabs.yandex.ru/resource/CuIsr6zAhrqK3bLdAytNR6_banana_20141031_icon-retina.png' />
<img class='img' src='http://yabs.yandex.ru/resource/CNQFYjt7nmId0Iot3YY61k_banana_20141031_plane.png' />

<div class='col'></div>
<div class='col'></div>

<script>

    var src;
    Array.prototype.forEach.call(document.querySelectorAll('.img'/*селектор картинки*/), function (img) {
        img.addEventListener('click', function () {
            src = this.src;
        }, false);
    });
    Array.prototype.forEach.call(document.querySelectorAll('.col'/*селектор ячейки*/), function (col) {
        col.addEventListener('click', function () {
            if (src) {
                this.style.backgroundImage = 'url(' + src + ')';
            }
        }, false);
    });

</script>
Ответить с цитированием
  #15 (permalink)  
Старый 09.09.2015, 11:58
Аспирант
Отправить личное сообщение для Beegun Посмотреть профиль Найти все сообщения от Beegun
 
Регистрация: 07.09.2015
Сообщений: 38

Всем огромное спасибо, tsigel, прикрутил ваш скрипт к своим таблицам, получилось то, что нужно. На последок, нужна стиралка, то-есть кнопка, после нажатия которой в переменную вписывается значение, которое будет убирать background image. Если не трудно)
Ответить с цитированием
  #16 (permalink)  
Старый 09.09.2015, 12:19
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

Beegun,
Вам по нажатию кнопки надо менять src и тогда при клике на ячейку он заменит src на тот что вы поменяли в нажатии кнопки.

Попробуйте, это не сложно! Если что - помогу.
Ответить с цитированием
  #17 (permalink)  
Старый 09.09.2015, 14:53
Аспирант
Отправить личное сообщение для Beegun Посмотреть профиль Найти все сообщения от Beegun
 
Регистрация: 07.09.2015
Сообщений: 38

tsigel, решил вопрос так
eraser.onclick = function() {
    src = "///";

Насколько это безобразно?
Ответить с цитированием
  #18 (permalink)  
Старый 09.09.2015, 14:59
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

Beegun,
Ну там наверно в консоли ошибки что он не может скачать этот урл, но для костыля сойдет. Не плохо!

Для того чтобы сделать нормальный ластик надо удалять совсем 'backgroundImage';

Логику можно оставить почти ту же. Типа жмем на кнопку стирания, и записываем флаг что сейчас мы стираем.
при клике на ячейку мы проверяем: если надо удалять - удаляем и убираем флаг обратно (чтобы он все время не удалял), а в противном случае смотрим на переменную src - и как и было.
Ответить с цитированием
  #19 (permalink)  
Старый 09.09.2015, 15:04
Аспирант
Отправить личное сообщение для Beegun Посмотреть профиль Найти все сообщения от Beegun
 
Регистрация: 07.09.2015
Сообщений: 38

Ну да, так и есть, выглядит так
style="background-image: url(http:);
Однако ошибок в консоли нет)
Судя по тому что вы написали, скрипт будет весомый.

Последний раз редактировалось Beegun, 09.09.2015 в 15:06.
Ответить с цитированием
  #20 (permalink)  
Старый 09.09.2015, 15:12
Профессор
Отправить личное сообщение для tsigel Посмотреть профиль Найти все сообщения от tsigel
 
Регистрация: 12.12.2012
Сообщений: 1,398

Beegun,
да вобщем-то нет, просто я описал алгоритм. Я так понимаю, что Вы вполне в состоянии по мануалам понять как сделать что-либо если знаете что надо делать. Это очень хорошо, Вы просто пока не понимаете как придумать что делать, но по началу это нормальнльно. По сути вам надо добавить условие которое проверяет, нажимали ли на ластик. И если да - то удалять стиль, а если нет - то как раньше. Совсем немного, не правда ли?
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать значение параметра в скрипт через переменную. Ellis Javascript под браузер 5 29.10.2015 13:08
Вставить значение div в переменную js snake AJAX и COMET 2 21.10.2013 15:38
Выводить значение раньше переменных Гробовщик Общие вопросы Javascript 11 10.09.2013 08:42
значение src в переменную ashkalov Общие вопросы Javascript 12 30.09.2012 18:36
Не могу записать значение в переменную!!! di@mond Элементы интерфейса 3 30.06.2009 23:05