уникальноcть id ключа (php) и имени функции (jscript) под него
всем привет, подскажите, сделал компонент на битриксе, на странице планирую использовать его несколько раз - т.е. нужно обеспечить уникальность по ключам и обработке
делаю так, например <?php инициализирую уникальный ключ $uid=uniqid(); ... использую уникальный ключ для составного id <div id="<?=$uid?>_hover_byDir" uk-dropdown="mode: hover; "> ... ?>
<script>
передаю уникальный ключ в скрипт
var uid="<?=$uid?>";
пытаюсь оформить составное имя функции под составной id
$('#' + uid + '_hover_byDir').on('beforehide', function () {....
</script>
функция не срабатывает (имя в таком виде не воспринимается) - подскажите как правильно оформить функцию из переменной для данного случая? |
В id можно объединять через дефис, нижнее подчеркивание, точкой, но не пробелом, это в именах классов они доступны.
|
сори, - кеш не сбросил, тему закрываю :agree:
ps Спасибо! |
хотя, если продолжить по уникальности - еще один вопрос
допустим я использую компонент два раза на странице - уникальность по селекторам для php и обработчикам jscript есть а как поступать с переменными в jscript? - (я еще не совсем в теме) когда смотрю код страницы вижу два идентичных блока <script> в каждом из которых, например, используется структура с одним и тем же именем например
var str_href = {
sort_byDir:"asc",
sort_byName: "Наименование"
}
она (str_href) в рамках страницы (в рамках одного из блоков script) будет локальной? или глобальной для всей страницы (использоваться по первому включению) и ее нужно тоже модифицировать с уникальным ключом? |
ef1,
Цитата:
<script>
var str_href = {
sort_byDir:"asc",
sort_byName: "Наименование"
}
alert("0 " + str_href.sort_byDir);
</script>
<body>
<script>
alert("1 " + str_href.sort_byDir);
</script>
</body>
<script>
alert("2 " + str_href.sort_byDir);
</script>
|
глобальная, ясно, т.е. нужно разруливать через экземпляры класса содержащего эту структуру?
|
Не знаю, кода маловато...
Может так пойдет?
<script>
var str_href = [];
</script>
<script>
str_href.push({
sort_byDir:"asc0",
sort_byName: "Наименование"
});
alert(JSON.stringify(str_href));
</script>
<body>
<script>
str_href.push({
sort_byDir:"asc1",
sort_byName: "Наименование"
});
alert(JSON.stringify(str_href));
</script>
</body>
<script>
str_href.push({
sort_byDir:"asc2",
sort_byName: "Наименование"
});
alert(JSON.stringify(str_href));
</script>
|
как вариант, но не очень красиво :)
в любом случае - Спасибо! (ушел читать мануал по jscript) |
| Часовой пояс GMT +3, время: 02:20. |