Передать переменную в настройки jQuery Expander - PullRequest
0 голосов
/ 02 марта 2012

Я использую плагин jQuery Expander внутри столбца jqGrid.Я хочу, чтобы точка среза была динамически немного меньше, чем нефиксированная ширина столбца.Я могу легко получить столбец с целым числом, но не могу понять, как передать это в настройки Expander.

// get comment column width dyanmically
var commentswidth = document.getElementById('list_comments').style.width; // will return width in string (e.g. "550px")
var sliceplace = parseInt(commentswidth) - 40; // convert string to int and subtract offset
alert(sliceplace); // test to see that it is correct

// use jQuery Expander to shorted comment boxes
$('div.expandable span').expander(
{
    slicePoint: sliceplace,
    expandEffect: 'show',
    expandText: ' ...',
    expandPrefix: '',
    userCollapseText: 'less'
}
); //end expander

Переменная sliceplace установлена ​​правильно, но Expander не работает (так как переменная не может быть прочитана, я предполагаю).Когда я заменяю 'sliceplace' в Expander целым числом, все работает отлично.

Ответы [ 2 ]

1 голос
/ 05 марта 2012

Я тупой.Расширитель использует количество символов, поэтому ширину необходимо преобразовать в приблизительное количество символов.Я выбрал ширину 8 пикселей в качестве средней ширины символа, и это работает.

// get comment column width dyanmically
var commentswidth = document.getElementById('list_comments').style.width; // will return width in string (e.g. "550px")
alert(commentswidth);
var sliceplace = parseInt(commentswidth)/8; // convert string to int divide by an average character width to get number of characters to slice at
sliceplace = parseInt(sliceplace);
alert(sliceplace);

// use jQuery Expander to shorten comment boxes
$('div.expandable span').expander(
{
    slicePoint: sliceplace,
    expandEffect: 'show',
    expandText: ' ...',
    expandPrefix: '',
    userCollapseText: 'less'
}
); //end expander
0 голосов
/ 02 марта 2012

Вместо этого используйте метод данных Jquery.

http://api.jquery.com/jQuery.data/

...