Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Редактирование содержимого кода

Здравствуйте, форумчане. У меня такая делема.

Не получается задать параметры высоты и длины рамки (она не должна быть на всю страницу). Еще не получается убрать расстояние между маркерами в списке, что только не пыталась сделать.
Если сможете помочь мне, указать на ошибки, буду очень признательна)

Вот мой код:

<html>
<body style="border: 3px solid #000000; background-color: #FFFFFF;

padding: 10px; border-height: 700 px; border-width: 700 px">
<h1><P align = "center" title = "первый абзац">
<FONT size = "7" face = "arial"><EM><FONT

color="red">Google</FONT></EM></h1></style></FONT>
<FONT size = 3>
<P style="text-indent: 25px;" style="margin-left: 40px" align = "left"

title= "второй абзац"><B><U><FONT color="teal"> Это поисковая система</U>,

которая входит в одноименную компанию, стоимость которой превышает 30

миллиардов долларов</FONT></B><BR>
</FONT>
</P>
<P align = "right" title = "третий абзац"> С 1998 года началось развитие

этой поисковой системы, которое продолжается до сегодняшнего дня.</P>
<P style="margin:0"> 1. Сегодня эта поисковая система имеет самую большую

базу проиндексированных документов и наивысшую скорость индексации сайтов и

переиндексации тех сайтов, которые уже есть в яндексе.</P>
<P style="margin:0"> 2. Google обладает уникальными инструментами

ранжирования информации при запросе, а также эффективными алгоритмами оценки

информационного содержания.
<P align = "center" title = "шестой абзац"> <B><FONT color="purple">Основные

отличительные черты:</FONT></B><BR></P>
<P style="margin:0"; style="padding-left:30px"; align = "left" title =

"седьмой абзац">
<UL> <LI><I><FONT color="green"> Google не отварачивается от творцов сайта

или веб-мастеров, предлагая оным хорошо продуманный интерфейс

</FONT></I></UL><BR></P>
<P style="margin:0"; style="padding-left:30px" align = "left" title =

"восьмой абзац">
<UL> <LI><I><FONT color="green"> Поисковая система не умеет читать текст на

изоюражениях, поэтому нужно тщательно прописывать параметры alt в

тегах</FONT></I></UL><BR></P>
</body>
</html>
Ответ:
Спасибо вам большое)

Вам также можеть быть интересно:

буквы
One Page Parallax не заканчивается
RegExp
Выделить текст автоматом
Помогите пожалуйста с оформлением
Вопрос: Автоматизация редактирования html кода по заданной логике

Столкнулся с задачей, не могу найти решение.
Нужно вставить ID (хэштег, якорь) для множества элементов на странице, взяв значение в определенном месте последующего кода.

Т.е имеем на странице множество повторений структуры кода и уникальные значения:

HTML5
1
2
3
4
5
6
7
<h2>Деталь</h2>
        <table >
        <tbody>
        <tr>
        <td style="width: 60%;">Артикул:</td>
        <td style="width: 40%;">PF99999</td>
        </tr>...
нужно получить:

HTML5
1
2
3
4
5
6
7
<h2 [B]id="PF99999"[/B]>Деталь</h2>
        <table >
        <tbody>
        <tr>
        <td style="width: 60%;">Артикул:</td>
        <td style="width: 40%;">PF99999</td>
        </tr>...
Подскажите, пожалуйста, как можно автоматизировать такое редактирование, чтобы не править код вручную (идти по коду, находить нужный участок кода и прописывать в нужном месте id, взяв его из ячейки последующей таблицы, повторить это действо придется более 100 раз и не на одной странице ).
Ответ: Можно написать скрипт на чем-нибудь обработки строк в файле. Например с конца файла искать строку <td style="width: 40%;">, заносить в переменную значение до строки </td>, далее искать строку <h2, и заносить значение из переменной... Описываю принцип, возможно не совсем точно описываю процедуру поиска и вставки значений. Вам на другую ветку форума или в поисковике искать готовые решения.
Вопрос: Input и кратность содержимого поля

Суть проблемы - необходмо, чтобы в поле Input были только значения чисел, кратные 100!

Сейчас редактирование поля ручками запрещено с помощью "disabled", исходное значение в поле равно 100-м:

<input type="text" value="100" class="count" disabled>

...и дополнительный HTML код + Jquery скрипт выводят рядом с полем кнопки "-" и "+", которые при нажатии на них меняют значение содержимого поля на -100 или +100. В целом это решает вопрос кратности, но если человеку нужно "вбить" очень большое число, например 95000, то для этого ему нужно нажать на "+" 950 раз! А это не дело...

Поэтому, все-таки необходим скрипт, который при выходе из поля (потери фокуса или еще как-то по завершению пользователем работы с содержимым поля) - округлял значение вбитого содержимого до целых сотен.

Как это сделать на Jquery? Помогите плиз!
Ответ: Всем спасибо за помощь! Код от Silver22 применил, вопрос решён!
Вопрос: Как создать для своего файла окно редактирования в админконсоли?

Проблема у меня такая.

Есть допустим файл proba.php.Которая лежит в директории
D:\OpenServer\domains\naforum\wp-content\plugins
(то есть в каталоге плагинов)

И мне нужно чтоб была возможность вставлять в файл текст/редактировать содержимое файла прямо из админпанели.
Я в курсе что есть в меню пункт Редактор,где можно редактировать шаблоны темы,но меня интересует создание своего
окна именно для редактирования одного конкретного файла.

Я например видел,что некоторые плагины, имеют свои мини админпанели в админконсоли вордпресс, для настройки опций иих работы.

Не могу нигде в инете найти инфу.
отдельное окно редактирования своего файла в консоли вордпресс
Ответ:
denisco, Plugin/theme name -- название плагина.темы? то есть указать название темы или плагина?


Plugin prefix --префикс плагина ??-- вообще без понятия о каком префиксе идет речь?

Text domain -- название адреса сайта?? как я могу знать для какого домена будет использоваться плагин ?

если допустим у меня адрес сайта ,а потом будет другой адрес,то как быть ?
На странице генератора есть буковки i у параметров поясняющие что они значат. Нужно просто навести мышкой.
Аналогично, есть информация в по этим параметрам.

Plugin/theme name
Название Вашего плагина или темы. У всех расширений должны быть название.

Plugin prefix
Используется в коде. Для уникальности имен функций, опций и т.д. Иначе могут возникнуть конфликты с другими расширениями или WordPress.

Text domain
Это идентификатор для переводов. Используется при локализации.

denisco, вот еще вроде пример



но непонятно почему функции прописываются в отдельной папке в корне темы ,а не скажем в плагине
Потому что автор статьи решил так реализовать. Минусы данного решения достаточно очевиден: при смене темы теряется функциональность необходимая для корректной работы сайта + нужно вручную править шаблоны.

мне нужно чтоб не нужно лезьть в футер.Чтоб все управлялось с админпанели в окне плагина
Я думаю, проще всего взять какой-нибудь плагин за образец и сделать свой. Например, .
Вопрос: Редактирование скриптом скрипта

Доброго времени суток, уважаемые Гуры. Помогите срочно, пожалуйста, очень нужно. Подскажите, если код скрипта есть в теге скрипта, то всё просто - находим скрипт ноду и читаем-пишем innerHTML, а можно ли произвести аналогичные вещи, если скрипт тег пуст, а сам код подгружается из внешнего файла по src? Или ход конём - скрипт внутри срипта меняет своё содержимое, возможно ли такое или аки придётся через innerHTML ваять?
Ответ:
Сообщение от arcmag
передать их пхп
PHP не подходит. Хотелось бы чтобы клиент обрабатывал.
Сообщение от arcmag
запускать ТАКОЕ лично вам
Я в яваскрипте недавно вынуждено для проекта, а вообще С++, поэтому не нужно недооценивать) Именно в данном случае как это сделать яваскриптом не знаю и не смог найти, а что делать с полученной строкой - это уже продумано. Но так и не найден вариант для получения и записи скрипта. ПХП - штука крутая, но пересылка и т.п. + задержки сервера - долго будет грузиться результат.
Сообщение от arcmag
Да и вообще я не думаю что хоть 1 нормальный человек позволит запускать у себя на сайте какие то скрипты позволяющие перезаписывать существующие файлы, под каким бы благим соусом это все не преподносилось...
Ну не знаю. Вариант полностью открытого исходного кода - копируешь и отдавай своим сервером, раз не доверяешь. Важнее то, что это и быстрее будет работать и разрабатывать проще, разве нет? Кто виноват, что разработчики браузеров так конкурентничают, что программисты должны это учитывать? - Не должны тысячи зависеть от сотни - это не правильно.
Вопрос: Возможность редактирования нескольких таблиц.

Подскажите,пожалуйста,как сделать такое Есть таблица ,ее содержимое можно редактировать
Код Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$('a.edit','#test_tbl2').click(function (){
    tr = $(this).parent().parent();
    for(var i=0; i<3; i++) 
    $('input:eq('+i+')','#edit_div').val($('td:eq('+i+')',tr).text());
    appearence();
});
$('a.del','#test_tbl2').click(function (){
    if(!confirm("Delete?")) return;
    $(this).parent().parent().remove();
});
$('#save_but','#edit_div').click(function (){
    for(var i=0; i<3; i++) 
    $('td:eq('+i+')',tr).text($('input:eq('+i+')','#edit_div').val());
    appearence();
});
$('#cancel_but','#edit_div').click(appearence);
Это для одной таблицы которая есть в разметке,а как сделать это для созданных таблиц?
Код Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 var table_id=0;
    function new_table() {
    var countTr = $("#tr").val();
    var countTd = $("#td").val();
    table_id++;
    $('#r').append("<table border ='1' id='t"+table_id+"'></table>");
    for (var i = 1; i <= countTr; i++) {
    $('#container #t'+table_id).append("<tr></tr>");
    for (var n = 1; n <= countTd; n++) {
     $('#container #t'+table_id+' tr:last').append("<td>" + i + "." + n + "</td>");
            }
        }
        $("table").draggable({ containment: 'parent' });
        
        $("table").resizable();
    };
Заранее спасибо!
Ответ: Armi, вот кусочек из таблицы

Код HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<tr>
        <td>ten</td>
        <td>eleven</td>
        <td>twelve</td>
        <td><a class="edit">edit</a> <a class="del">del</a></td>
    </tr>
</tbody></table>
<div id="edit_div" class="pad3 bg bord abs dis">
    <input type="text" size="15">
    <input type="text" size="15">
    <input type="text" size="15">
    <input type="button" value="Сохранить" id="save_but">
    <input type="button" value="Отменить" id="cancel_but">
</div>

Тут 3 поля,а если я создаю таблицу,я же заранее не знаю количество строк и нужно будет наверно создавать поля под каждый столбец
Вопрос: AJAX Редактирование ячейки таблицы в браузере и в БД

Хочу сделать чтобы при клике по ячейке таблицы добавлялся временный тег input в который мы вводим новое значение, и при снятии фокуса выполнялся бы ajax. И в случае если запрос был успешным изменить содержимое ячейки в браузере. Передаваемые данные в ajax id тега tr, id тега td и значение введенное в input.

html:

HTML5
1
<tr id='1'><td id='ip' class='edit'>1231412411</td></tr>
ajax:

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
                $('.edit').click(function(e) {
                    e.preventDefault();
                    $(this).html("<input type='text' value='"+$(this).text()+"'/>");
                }).click(function(e) {
                    e.preventDefault();
                    return false;
                }).blur(function(e) {
                    var send_id = $(this).closest('tr');
                    var tag = $(this).attr('id');
                    var info = $(this).text();
                    function funcSuccess(data)
                    {
                        if(data=='ok')
                        {
                            tag.text($(this).val());
                        }
                    }
                    e.preventDefault();
                        $.ajax ({
                        url: "edit.php",
                        type: "POST",
                        data: ({id: send_id, type: tag, value: info}),
                        dataType: "html",
                        success: funcSuccess
                    });
                });
и собственно PHP:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
include('connect_db.php');
if(isset($_POST['id'])&&isset($_POST['type'])&&isset($_POST['value'])){
    $id = $_POST['id'];
    $type = $_POST['type'];
    $value = $_POST['value'];
    if(mysql_query ("UPDATE dashboard SET '$type' = '$value' WHERE id = '$id'"))
        echo 'ok';
    }
    else {
        echo 'error';
    }
}
else {
    echo 'error';
}
?>
Ответ: koc94ok, У вас планируется динамическое добавление/удаление строк?

Добавлено через 55 минут
koc94ok, Совсем недавно делал подобную задачу в качестве стажировки, основная проблема конечно заключается в валидации на стороне сервера и клиента, но сейчас эту тему не будет трогать.
В общем дам несколько советов. Динамически создавать инпут не нужно. Он должен уже лежать в ячейке, только скрытый. Присваивать значение ячейке лучше сразу, и откатывать в случае ошибки. Это визуально ускорит процесс. Иначе из-за задержек ответа от сервера будет не очень удобно пользоваться. Далее, если у вас id у tr предполагает значение id элемента в БД, то лучше не использовать аттрибут id, а лучше использовать data-id, тоже самое касается и имени поля ('ip'). Рекомендуется все-таки формировать ответ от сервера в формате json, да и все аякс запросы в прочем, таким образом вы сможете не только констатировать удачу/неудачу исполнения php кода, но и передавать различные дополнительные значение, к примеру текст либо код ошибки, таким образом поясняя, что именно произошло не так.
Вот накидал такой примерчик на скорую руку, код подстроен для сервиса jsfiddle
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<table class='wrap' border='1'>
  <tr data-id='1'>
    <td data-name='ip' class='edit'>
      <div>1231412411</div>
      <input value='1231412411'>
    </td>
  </tr>
  <tr data-id='2'>
    <td id='ip' class='edit'>
      <div>1231412411</div>
      <input value='1231412411'>
    </td>
  </tr>
</table>
CSS
1
2
3
.edit input {
  display: none;
}
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
$('.wrap').on('click', '.edit', function() {
  $this = $(this);
  $this.find('div').hide();
  $input = $this.find('input').show().focus();
});
$('.wrap').on('focusout', '.edit input', function() {
  var $input = $(this).hide();
  var $tr = $input.closest('tr');
  var $td = $input.parent();
  var defaultValue = $input[0].defaultValue;
  var newValue = $input.val();
  var $div = $tr.find('div').text($input.val()).show();
  
  if(defaultValue === newValue) {
    return false;
  }
  function fail(){
    $div.text(defaultValue);
    $input.val(defaultValue);
    alert('не удалось изменить элемент');
  }
  $.post('/echo/html/', {
    id: $tr.data('id'),
    name: $td.data('name'),
    value: newValue,
    html: 'ok'
  }).done(function(data){
    if(data==='ok'){
        $input[0].defaultValue = newValue;
    } else {
        fail()
    }
  }).fail(fail)
})

Здесь приходит тот ответ, который вы посылаете параметром html, таким образом можете генерировать ошибку, изменив передаваемый параметр html, отличный от "ок"
Вопрос: Изменение фона div в зависимости от содержимого

Добрый день всем! Не силен в javascript, прошу помощи)))кто чем может)))

Есть html код, в котором есть 3 div'a, в каждом диве есть свое содержимое. Необходимо написать такой скрипт, который будет проверять содержимое этих дивов и в зависимости от содержимого будет устанавливать разный цвет фона.

Код HTML5
1
2
3
4
5
6
<body>
   <div class="new">Новинка</div>
   <div class="new">Мы рекомендуем</div>
   <div class="new">Лучшее</div>
 
</body>
Хотелось чтобы див с содержимым НОВИНКА был синий, с содержимым Лучшее - желтым и с содержимым Мы рекомендуем - с зеленым.
Ответ: Опан, не думал, что вы велосипедист

но я тоже предложу свой вариант
Код Javascript
1
2
3
4
5
6
7
8
;[].forEach.call(document.querySelectorAll(".new"),function(elem){
    var arr={
        новинка:"blue",
        "мы рекомендуем":"green",
        лучшее:"gold"
    }
    elem.style.backgroundColor=arr[elem.innerHTML.toLowerCase().trim()]
})
Вопрос: Проверить корректность комментирования кода

Проверьте, правильно ли я трактую данный код (и, если можно, укажите на ошибки в трактовке):



Код Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
            // News animation on hover ----------------------------     
// обращаемся к селектору с класом "preview_news" вызываем функцию on при срабатывании события "mouseover" для тега "h2" , вызываем анонимную функцию   
                $('.preview_news').on('mouseover', 'h2', function() {
// обращаемся к текущему свойству css и ставим параметр "text-decoration" "underline"               
                    $(this).css({'text-decoration':'underline'});
// обращаемся к селектору с класом "preview_news" вызываем функцию "on"  по событию "mouseout" для тега "h2", вызываем анонимную функцию
                });
                $('.preview_news').on('mouseout', 'h2', function() {
// для текущего css свойства выставляем значение "text-decoration"  "none"              
                    $(this).css({'text-decoration':'none'});
                });
// обращаемся к селектору с класом "preview_news" вызываем функцию "on" по событию "click" для тега h2 и для div с класом "preview-news-img", вызываем анонимную функцию    
                $('.preview_news').on('click', 'h2, div.preview-news-img', function() {
// Переменная содержимое "content" получила значение атрибут "data-url" 
                    content = $(this).attr('data-url');
// обращемся к селектору с идентефикатором "preload" ставим анимаю появления продолжительностью 2 сек.
                    $('#preload').fadeIn(200);
// вызываем функцию "getContent" , параметром которой переменная  "content"
                    getContent(content);
// Вызываем функцию History с методом"pushState" с параметром "state" "1" метод  rand: значением которого являеться функция  "Math.random()", котороя возвращает случайное число с плавающей точкой, если возвраем  "null" (ноль), то складываем содержимое переменых "lang" + символ амперсанд + "content"
                    History.pushState({state:1,rand:Math.random()}, null, "?"+lang+"&"+content);
                });
                
            // Works on hover ----------------------------  
//переменные: "blockLeft","blockTop","parentWidth","parentHeight" получают пустое значение; 
                blockLeft = '';
                blockTop = '';
                parentWidth = '';
                parentHeight = '';
//переменная "nowOpenWorks" получает значение "0";
                nowOpenWorks = 0;
//обращаемся к селектору "div.works", вызываем функцию "On"  при событии "mouseenter" вызываем анонимную функцию которая меняет css конкретного елемента на который навели курсор.
                $('div.works').on({
                    mouseenter: function() {
                        $(this).css({'background-color': 'white'});
                    },
// вызываем анонимную функцию "mouseleave" которая меняет css конкретного елемента на который навели курсор.(меняем цвет)
                    mouseleave: function() {
                        $(this).css({'background-color': '#212121'});
                    },
// вызываеться анонимная функция которая срабатывает при событии "click"
                    click: function() {
// обращаемся  к елементу с класом "darkmask", вызываем функцию "fadeIn()" которая запускает появление данного селектора
                            $("#darkmask").fadeIn();
// переменная parentDiv получила значение текущего елемента
                            parentDiv = $(this);
// переменная  video получает значение текущего потомка тега "img" вызываем функциюю "eq(0)" которая сокращает количество свпавших елементов до 0 , добавляем атрибут "data-video"
                            video = $(this).children('img').eq(0).attr('data-video');
// переменная textTitle получает значение тега h4 который находиться в родительском div
                            textTitle = parentDiv.find('h4').text();
// переменная x принимает значение фрейма с шириной 640 и высотой 360 атрибутом "src" с адресом + содержимое переменной видео + а трибуты "?rel=0&amp;controls=1&amp;showinfo=0' frameborder='0' allowfullscreen"
                            x = "<iframe widрth='640' height='360' src='https://www.youtube.com/embed/"+video+"?rel=0&amp;controls=1&amp;showinfo=0' frameborder='0' allowfullscreen></iframe>";
                            c = '<img id="close" data-alt-src="img/icon/close_h.png" src="img/icon/close.png" title="Close" alt="Close" style="  float: right; margin: -20px -20px 0 0;" />';   
// апилируем к селектору с идентификатором  "show-video" вызываем функцию "empty()" которая очищает его содержимое вызываем функцию "append"которая добавляет её содержимое.    
Ответ: Ну немножко если маленькие оговорки, а так в целом сойдет

Добавлено через 14 минут
Хотя нет. Все таки поправлю тебя.
Код Javascript
1
2
3
 - // обращаемся к селектору с класом "preview_news" вызываем функцию on при срабатывании события "mouseover" для тега "h2" , вызываем анонимную функцию
 
 + // Устанавливаем делегированный обработчик события "mouseover", элементу "h2" лежащий в элементе с классом "preview_news"
Добавлено через 12 секунд
Как-то так...

Добавлено через 2 минуты
Стоило прочитать до конца. И появилось много поправок. Но да ладно
Надеюсь ваша жизнь от этого не зависит

Добавлено через 2 минуты
Сообщение от Валерий1996
$('#preload').fadeIn(200);
Здесь продолжительность не 2 секунды, а 2 миллисекунды (0.2 секунды).

Добавлено через 5 минут
Где объявление переменных ? Что за безобразие...
Код Javascript
1
2
3
4
var blockLeft = '';
var blockTop = '';
var parentWidth = '';
var parentHeight = '';
Вопрос: Сворачивание содержимого object

Подскажите, кто нибудь пробовал сворачивать тег object на своем сайте? Проблема вот в чем, простой текст у меня без проблем сворачивается, а вот содержимое тега object нет. В теге содержится svg файл.

Думал также, может это ограничение обойду вставкой содержимого insertBefore, но код для работы с svg файлом не работает.
PHPHTML
1
2
3
4
5
6
7
8
9
10
11
12
13
<div class="spoiler">
<div class="spoilertitle">
<p>Заголовок</p>
<input class="input-button" onclick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') 
    { this.value = 'Свернуть'; this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = '';  this.innerText = ''; } 
    else { this.value = 'Развернуть'; this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; }" type="button" value="Развернуть" />
</div>
<div class="spoilertext">
<div style="display: none;">
Содержимое
</div>
</div>
</div>
Ответ: Да вот хотя бы вот так:
HTML5
1
2
3
4
<input class="input-button" onclick="$('#one').slideToggle('slow');" type="button" value="Развернуть" />
<div id="one" style="display: none;">
        <div>содержимое<object data="map.svg" type="image/svg+xml" id="dfg54uybn" height="100" width="100"></object></div>
</div>
слово "содержимое" раскрывается, а вот картинка svg не появляется.

Добавлено через 6 минутПолностью весь код страницы к сожалению показать не смогу, но нашел причину, но не знаю, как избавиться от нее. Спойлер не раскрывается из -за подключаемого файла js, который обрабатывает содержимое svg файла. (:

Добавлено через 8 минут
В нем, если все затереть или оставить просто
Javascript
1
2
$(window).load(function () {
}
svg файл не открывается через спойлер.
А вот если удалить подключаемый js файл в head, то все работает.
Как в этой ситуации быть?

Добавлено через 50 минут
Все получилось, но не спойлером а методом dispay:none по кнопке.