Александр, ну я так примерно и решил то есть там, где мне нужно в html вешаю onclick="return ['nameFunction', arg]"
Потом как html загрузился заменяю их уже с нужным контекстом. Примерно так
document.querySelectorAll("[onclick]").forEach((el) => {
let btnFunc = el.onclick;
el.onclick = (e) => {
let arg=btnFunc();
if(arg[0] in this.contentFn) {
this.contentFn[arg[0]].apply(this.contentFn, arg.slice(1));
}
}
});
this.contentFn - здесь хранятся все доступные функции для выполнения, this это сам компонент
Как думаете, есть ли в этом подходе серьезные проблемы?
Александр, в подгружаемом html есть кнопки на которые нужно навесить различный функционал. Из-за того что html код может часто меняться делать его как компонент не вариант, придется постоянно поправлять компонент.
p.s. Для себя эту проблему уже решил, после вставки html кода, заменяю onlick с нужным контекстом. Но хотелось бы увидеть еще другие решения.
Adik Izat, Вариант 1, отправить стандартной отправки формы с перезагрузкой страницы, для этого нужно добавить скрытый input туда добавить эти значение.
Вариант 2. использовать различные библиотеки для отправки запросов. Если используете jquery то jquery.post либо любую другую библиотеку например axios
Mountain Programmer, Должно работать, если не работает то у вас редирект скорее всего делает сервер и по факту вы загружаете страницу site.ru/abc серевер её перенаправляет на site.ru/login и по факту js думает что вы зашли по прямой ссылке. Вам нужно сервером сохранить реферрер
Доступ даю для другого человека, поэтому не хочется давать больше прав чем положено. На сайте несколько сайтов и только один нужно разграничить. Для меня лучше один раз настроить под человека, чем постоянно что-то прописывать для него.
Можно поинтересоваться, а где настроить, чтобы автоматом php-fpm создавал папки 775, сейчас автоматом создаются 755.
Владимир Проскурин, плюс еще минус этого решения в том, что даже если оно заработает, вы уже условия задачи меняете, где я написал, что фоном будет картинка, а в примере для простоты я поставил фон цветом. Я могу вам сделать ваше решение легче используя просто тени, гуглится за 1 минуту, но я писал что тенями нельзя так как будет вместо цвета фоновая картинка. Не говоря уже о том, что Ankhena говорит, что способа нет, хотя оно есть, но оно мне не подходит из-за того что будет использоваться фоновая картинка, а не цвет.
Ankhena, "нет такого решения", "невозможно" я не знаю как вы, но такие утверждения очень слабые, я лично со своим опытом верстки (он поверьте не такой маленький) и тем более после 10 минут на раздумье побоялся бы так утверждать.
Мария Коробкоголовых, проблема в том, что ваш вариант заточен только под конкретный текстовый блок, достаточно изменить текст и решение уже не будет работать.
Ankhena, Владимир Проскурин в любом случае спасибо вам за отклик. Но к сожалению, я ищу именно то решение, которое описано в вопросе, без js, без жестких переносов, без уменьшения ширины (если это влияет на другие блоки). Почему я вопрос сразу поставил в разряд сложных, потому что все ваши варианты на поверхности лежат и легко решаемы для статичного контента.
Есть ли такое решение под мою задачу, я не знаю, я пол дня провозился и не смог найти, поэтому обратился сюда, может кто сталкивался с подобным.
Потом как html загрузился заменяю их уже с нужным контекстом. Примерно так
this.contentFn - здесь хранятся все доступные функции для выполнения, this это сам компонент
Как думаете, есть ли в этом подходе серьезные проблемы?